let result = @partition.partition(
document,
max_tokens,
render=doc => @output.xml(doc),
count=text => encoder.count(text),
project_metadata=(file_indices, section_indices) =>
project_metadata(file_indices, section_indices),
)pub(all) suberror PartitionError {
InvalidCap(Int)
DuplicatePath(String)
TemplateTooLarge(Int)
UnitTooLarge(UnitIdentity, Int)
InvalidCount(Int)
Overflow(String)
InvalidTextEncoding
} derive(Eq, Debug)test {
let result = @partition.partition(
@document.create([]),
3,
render=_ => "ctx",
count=text => text.length(),
project_metadata=(_, _) => Json::null(),
)
assert_eq(result.volumes[0].id, "part-0001")
assert_eq(result.volumes[0].text, "ctx")
assert_eq(result.volumes[0].tokens, 3)
}Install
Download zipGenerate AI-ready repository context with native AST compression, Git diffs/history, HTTPS inputs and exact o200k token counts.