Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.
module big_vector;
struct BigVector<phantom T0: store> has store, key {
id: UID,
depth: u8,
length: u64,
max_slice_size: u64,
max_fan_out: u64,
root_id: u64,
last_id: u64,
}
struct Slice<T0: store> has drop, store {
prev: u64,
next: u64,
keys: vector<u128>,
vals: vector<T0>,
}
struct SliceRef has copy, drop, store {
ix: u64,
}
public(package) fun borrow<T0: store>(&BigVector<T0>,u128):
&T0 public(package) fun borrow_mut<T0: store>(&mut BigVector<T0>,u128):
&mut T0 fun branch(u128,u64,u64):
Slice<
u64>
public(package) fun depth<T0: store>(&BigVector<T0>):
u8 public(package) fun destroy_empty<T0: store>(BigVector<T0>)
fun drop_slice<T0: drop + store>(&mut UID,u8,u64)
public(package) fun empty<T0: store>(u64, u64):
BigVector<
T0>
public(package) fun insert<T0: store>(&mut BigVector<T0>,u128,T0)
public(package) fun is_empty<T0: store>(&BigVector<T0>):
bool fun leaf_insert<T0: store>(&mut BigVector<T0>,u64,u128,T0): (
u128, u64)
fun leaf_remove<T0: store>(&mut BigVector<T0>,u64,u128,u64,u128,u64,u128): (
T0, u8, u128)
public(package) fun length<T0: store>(&BigVector<T0>):
u64 fun node_insert<T0: store>(&mut BigVector<T0>,u64,u8,u128,T0): (
u128, u64)
fun node_remove<T0: store>(&mut BigVector<T0>,u64,u128,u64,u128,u64,u8,u128): (
T0, u8, u128)
public(package) fun remove<T0: store>(&mut BigVector<T0>,u128):
T0 fun singleton<T0: store>(u128, T0):
Slice<
T0>
fun slice_bisect_left<T0: store>(&Slice<T0>,u128):
u64 fun slice_bisect_right<T0: store>(&Slice<T0>,u128):
u64 public(package) fun slice_borrow<T0: store>(&Slice<T0>,u64):
&T0 public(package) fun slice_borrow_mut<T0: store>(&mut Slice<T0>,u64):
&mut T0 fun slice_insert<T0: store>(&mut BigVector<T0>,u64,u8,u128,T0): (
u128, u64)
public(package) fun slice_is_leaf<T0: store>(&Slice<T0>):
bool public(package) fun slice_is_null(&SliceRef):
bool public(package) fun slice_key<T0: store>(&Slice<T0>,u64):
u128 public(package) fun slice_length<T0: store>(&Slice<T0>):
u64 fun slice_merge<T0: store, T1: store>(&mut BigVector<T0>,u64,u128,u64)
fun slice_redistribute<T0: store, T1: store>(&mut BigVector<T0>,u64,u128,u64):
u128 fun slice_remove<T0: store>(&mut BigVector<T0>,u64,u128,u64,u128,u64,u8,u128): (
T0, u8, u128)