///|
fn main raise {
let blocks = [b"first object", b"requested object", b"last object"].map(data => {
let cid = @cid.cid_from_content(
@cid.RAW_CODEC,
@cid.Sha2_256,
data,
@cid.sha2_provider(),
@cid.Limits::default(),
).unwrap()
@car.Block::new(cid, data)
})
let target = blocks[1].cid()
let archive = @car.Archive::decode(
@car.encode(@car.Header::new([target]), blocks),
)
let block = archive.get(target)
block.verify()
let location = archive.locations(target)[0]
println(
"lookup: \{block.data().length()} bytes at offset \{location.data_offset}",
)
println(target.to_text().unwrap())
}