OMGL7JBCLSHWTIYP7LSQXSUGBTIQFBD7VVCZCD27AORPOKOBTVMAC SXEYMYF7P4RZMZ46WPL4IZUTSQ2ATBWYZX7QNVMS3SGOYXYOHAGQC I52XSRUH5RVHQBFWVMAQPTUSPAJ4KNVID2RMI3UGCVKFLYUO6WZAC KDF6FJRVF72L274BEUJCTUKRFMNL6BDZMTVKDPEYGFX4TC3YOVSQC VO5OQW4W2656DIYYRNZ3PO7TQ4JOKQ3GVWE5ALUTYVMX3WMXJOYQC 6YMDOZIB5LVYLFIDGN2WNT5JTHEAMS4TFPVDEZ3OWXWOKJOC5QDAC CCLLB7OIFNFYJZTG3UCI7536TOCWSCSXR67VELSB466R24WLJSDAC GHO6DWPILBBTL6CVZKERJBTFL3EY6ZT4YM4E5R4S6YPGVFKFHCVAC CT6FBU57Y4NOFK3ABLTYMXJNW67EJ6MG53FRMPIVXTR7GTRU4HXQC YN63NUZO4LVJ7XPMURDULTXBVJKW5MVCTZ24R7Z52QMHO3HPDUVQC 7S4YD633DZUPKQNVB5KZBB2XK6FWI6NI2MLPB2P3NJFH443S4QCQC QL6K2ZM35B3NIXEMMCJWUSFXOBQHAGXRDMO7ID5DCKTJH4QJVY7QC EEBKW7VTILH6AGGV57ZIJ3DJGYHDSYBWGU3C7Q4WWAKSVNUGIYMQC A3RM526Y7LUXNYW4TL56YKQ5GVOK2R5D7JJVTSQ6TT5MEXIR6YAAC V4T4SC7OL6WEZNV4XSFBSXY5HPB7VXPSXWSK4Z63QXKQD4JSFNCQC U2CGP7OPHQZNAAPWCRSFVZQWXFRVCB2NC3APRA7ACQJZBIVBE6IQC 43SISRQ4CLKXN5YVFAGWUU3OJBT2TX6QXWWER33ONLEITSCFCUBAC C267PHOH3QJBSBEWQB3J7PPOOXIUKM3DIIZIPLHPU4D5OXRCGLZAC DO2Y5TY5JQISUHCVNPI2FXO7WWZVJQ3LGPWF4DNADMGZRIO6PT2QC FOCBVLOUXYA7ZCUZA2CU3JU2QGF3ZOXW6EAVL5KZINN43GXNL7CQC 26VQKD254I5DSCJY6IBALOI6IV6OAEKSBU67MOLX3EHNRJCMQZ4AC RVAH6PXA7H7NUDTF7Q52I7EXGXVJVMGI2LTNN6L3MVEDEMAXVH4AC GDAKVAFRCRJ4RJSXHTZOKRZCTWCB4HKYZMUBHVVRKALWEKWRHDLQC OXZVZDQZEVP7NV3HS6HK5QA7RUD35ODVQ3LL7PWJHTS7DEFM3XTAC QWIYNMI5SOTLRPYE4O3AG7R75JXM2TB3ZADU646PG6ACPBGSYUYAC JMOHVR5EL27IRLXO66W52DA4K33L467O5J5DRX2ARZTFM6JRHDVQC RIZ4IP76N4PNGXMMZSFPOQIUQICFMGSHJNJMYZGHM4WODM45QOHAC 2MKP7CB7FKQUNEAV3YPEJ7FNFW75VGGQIYPQRI54BFXGCUOQESPAC N26HD5PFUNVDSEXAQVOTMSMNPWFHQSZ5PHMGEF2ACC23OWFHTGQQC LTI3LT2GJHQMH2G2RYVSKR4IZJY24L6O2KIZTRNKLZPJMOKTD56AC PZ3BZ7FDGOO3ZDBDKRBI2BIISRREPRPZWP3ZGMDOANJYWBHL5T5QC XYTAZR367K6JFO7BHY46SIWZQ4J2XU2J2PIQ467E3PG4MQ5Y5ZFAC 7FP2DFNXGKH2GQIH35BAIHMRORXERI6ARZGVVN7LZKMUYIADIULAC 5P6PAI5SCVDTONGRKJTPCQRBAEM6VLZQ7FXSENVT4P5I72GHXU2AC AZM7VL5ZYNM2T2QOF2W24SALXGNYOVKNJJ4IQIFCMAWKG4V52IHAC C55NBE2RT5SLH7FONHVYJACAPJ6D6DCN2AZMINFODPJ2MIDCM76AC ELPODNACVGUX5UVXJFU2UWNN6W55JW5CBFSHFMY4SDEWUNVOELMAC AECQFAMEJ6UGG37UOWHUDO2ZXU7K62PPJDIIBIEGW5Q6FH5C3DNQC 4USQK3IWRHVI67CTRX2WDEDEYDBB3BADVECKNAX3XNCEPTQS5MDQC pub unsafe fn new_nolock<P: AsRef<Path>>(name: P) -> Result<Self, SanakirjaError> { unsafe {Self::new_with_size_nolock(name, 1 << 20)}}
pub unsafe fn new_nolock<P: AsRef<Path>>(name: P) -> Result<Self, SanakirjaError> {unsafe { Self::new_with_size_nolock(name, 1 << 20) }}
) -> Result<Self, SanakirjaError> { unsafe {Ok(Pristine {env: Arc::new(::sanakirja::Env::new_nolock(name, size, 2)?),})}}
) -> Result<Self, SanakirjaError> {unsafe {Ok(Pristine {env: Arc::new(::sanakirja::Env::new_nolock(name, size, 2)?),})}}
match begin(txn) { Some(txn) => {Ok(txn)} _ => {Err(SanakirjaError::PristineCorrupt)}}
match begin(txn) {Some(txn) => Ok(txn),_ => Err(SanakirjaError::PristineCorrupt),}
T: ::sanakirja::AllocPage<Error = ::sanakirja::Error>+ ::sanakirja::RootPageMut+ ::sanakirja::Commit+ ::sanakirja::LoadPage<Error = ::sanakirja::Error>,> RawMutTxnT for T
T: ::sanakirja::AllocPage<Error = ::sanakirja::Error>+ ::sanakirja::RootPageMut+ ::sanakirja::Commit+ ::sanakirja::LoadPage<Error = ::sanakirja::Error>,> RawMutTxnT for T
) -> Result<Option<Channel>, TxnErr<SanakirjaError>> { unsafe {debug!("unsafe load channel");match btree::get(&self.txn, &self.channels, &name, None)? {Some((name_, tup)) if name_ == name.as_ref() => {debug!("load_channel: {:?} {:?}", name, tup);Ok(Some(Channel {graph: Db::from_page(tup.graph.into()),changes: Db::from_page(tup.changes.into()),revchanges: UDb::from_page(tup.revchanges.into()),states: UDb::from_page(tup.states.into()),tags: Db::from_page(tup.tags.into()),apply_counter: tup.apply_counter.into(),last_modified: tup.last_modified.into(),id: tup.id,name,}))}_ => {debug!("unsafe_load_channel: not found");Ok(None)
) -> Result<Option<Channel>, TxnErr<SanakirjaError>> {unsafe {debug!("unsafe load channel");match btree::get(&self.txn, &self.channels, &name, None)? {Some((name_, tup)) if name_ == name.as_ref() => {debug!("load_channel: {:?} {:?}", name, tup);Ok(Some(Channel {graph: Db::from_page(tup.graph.into()),changes: Db::from_page(tup.changes.into()),revchanges: UDb::from_page(tup.revchanges.into()),states: UDb::from_page(tup.states.into()),tags: Db::from_page(tup.tags.into()),apply_counter: tup.apply_counter.into(),last_modified: tup.last_modified.into(),id: tup.id,name,}))}_ => {debug!("unsafe_load_channel: not found");Ok(None)}
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> GraphMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> GraphMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> ChannelMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> ChannelMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> DepsMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> DepsMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPageMut+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> TreeMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPageMut+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> TreeMutTxnT for MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> MutTxn<T>
T: sanakirja::AllocPage<Error = ::sanakirja::Error>+ sanakirja::RootPage+ sanakirja::LoadPage<Error = ::sanakirja::Error>,> MutTxn<T>
unsafe fn onpage_size(p: *const u8) -> usize { unsafe {
unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self {unsafe { path_id_from_raw_ptr(p) }}unsafe fn write_to_page(&self, p: *mut u8) {unsafe {*(p as *mut u64) = (self.parent_inode.0).0;self.basename.write_to_page(p.add(8))}}}unsafe fn path_id_from_raw_ptr<'a>(p: *const u8) -> &'a PathId {unsafe {
9 + len}}unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self { unsafe {path_id_from_raw_ptr(p)}}unsafe fn write_to_page(&self, p: *mut u8) { unsafe {*(p as *mut u64) = (self.parent_inode.0).0;self.basename.write_to_page(p.add(8))}}
std::mem::transmute(std::slice::from_raw_parts(p, 1 + len as usize))}
unsafe fn path_id_from_raw_ptr<'a>(p: *const u8) -> &'a PathId { unsafe {let len = *(p.add(8)) as usize;std::mem::transmute(std::slice::from_raw_parts(p, 1 + len as usize))}}
unsafe fn onpage_size(p: *const u8) -> usize { unsafe {let a = A::onpage_size(p);let b_off = (a + (B::ALIGN - 1)) & !(B::ALIGN - 1);let b_size = B::onpage_size(p.add(b_off));(b_off + b_size + (Self::ALIGN - 1)) & !(Self::ALIGN - 1)}}unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self { unsafe {&*(p as *const Self)}}unsafe fn write_to_page_alloc<T: sanakirja::AllocPage>(&self, t: &mut T, p: *mut u8) { unsafe {self.a.write_to_page_alloc(t, p);let off = (self.a.size() + (B::ALIGN - 1)) & !(B::ALIGN - 1);self.b.write_to_page_alloc(t, p.add(off));}}
unsafe fn onpage_size(p: *const u8) -> usize {unsafe {let a = A::onpage_size(p);let b_off = (a + (B::ALIGN - 1)) & !(B::ALIGN - 1);let b_size = B::onpage_size(p.add(b_off));(b_off + b_size + (Self::ALIGN - 1)) & !(Self::ALIGN - 1)}}unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self {unsafe { &*(p as *const Self) }}unsafe fn write_to_page_alloc<T: sanakirja::AllocPage>(&self, t: &mut T, p: *mut u8) {unsafe {self.a.write_to_page_alloc(t, p);let off = (self.a.size() + (B::ALIGN - 1)) & !(B::ALIGN - 1);self.b.write_to_page_alloc(t, p.add(off));}}
unsafe fn onpage_size(p: *const u8) -> usize { unsafe {REMOTE_LEN + 1 + (*p.add(REMOTE_LEN)) as usize}}unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self { unsafe {let len = *p.add(REMOTE_LEN) as usize;let m: &SerializedRemote =std::mem::transmute(std::slice::from_raw_parts(p, 1 + len as usize));m}}unsafe fn write_to_page_alloc<T: sanakirja::AllocPage>(&self, _: &mut T, p: *mut u8) { unsafe {std::ptr::copy(&self.remote as *const L64 as *const u8,p,REMOTE_LEN + 1 + self.path.len(),);debug!("write_to_page: {:?}",std::slice::from_raw_parts(p, REMOTE_LEN + 1 + self.path.len()));}}
unsafe fn from_raw_ptr<'a, T>(_: &T, p: *const u8) -> &'a Self {unsafe {let len = *p.add(REMOTE_LEN) as usize;let m: &SerializedRemote =std::mem::transmute(std::slice::from_raw_parts(p, 1 + len as usize));m}}unsafe fn write_to_page_alloc<T: sanakirja::AllocPage>(&self, _: &mut T, p: *mut u8) {unsafe {std::ptr::copy(&self.remote as *const L64 as *const u8,p,REMOTE_LEN + 1 + self.path.len(),);debug!("write_to_page: {:?}",std::slice::from_raw_parts(p, REMOTE_LEN + 1 + self.path.len()));}}
match txn.find_block_end(channel, p.dest()) { Ok(&dest) => {(dest, next_vertex)} _ => {continue;}}} else { match txn.find_block(channel, p.dest()) { Ok(&dest) => {(next_vertex, dest)} _ => {continue;}}};
match txn.find_block_end(channel, p.dest()) {Ok(&dest) => (dest, next_vertex),_ => {continue;}}} else {match txn.find_block(channel, p.dest()) {Ok(&dest) => (next_vertex, dest),_ => {continue;}}};
{ Some(e) => {e?;true} _ => {false}};
{Some(e) => {e?;true}_ => false,};
"wit-bindgen",
"wit-bindgen 0.46.0",][[package]]name = "wasip3"version = "0.4.0+wasi-0.3.0-rc-2026-01-06"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5"dependencies = ["wit-bindgen 0.51.0",
name = "wasm-encoder"version = "0.244.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319"dependencies = ["leb128fmt","wasmparser",][[package]]name = "wasm-metadata"version = "0.244.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909"dependencies = ["anyhow","indexmap","wasm-encoder","wasmparser",][[package]]
[[package]]name = "wit-bindgen"version = "0.51.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5"dependencies = ["wit-bindgen-rust-macro",][[package]]name = "wit-bindgen-core"version = "0.51.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc"dependencies = ["anyhow","heck","wit-parser",][[package]]name = "wit-bindgen-rust"version = "0.51.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21"dependencies = ["anyhow","heck","indexmap","prettyplease","syn","wasm-metadata","wit-bindgen-core","wit-component",][[package]]name = "wit-bindgen-rust-macro"version = "0.51.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a"dependencies = ["anyhow","prettyplease","proc-macro2","quote","syn","wit-bindgen-core","wit-bindgen-rust",][[package]]name = "wit-component"version = "0.244.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2"dependencies = ["anyhow","bitflags 2.10.0","indexmap","log","serde","serde_derive","serde_json","wasm-encoder","wasm-metadata","wasmparser","wit-parser",]
name = "wit-parser"version = "0.244.0"source = "registry+https://github.com/rust-lang/crates.io-index"checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736"dependencies = ["anyhow","id-arena","indexmap","log","semver","serde","serde_derive","serde_json","unicode-xid","wasmparser",][[package]]