Crate mina_tree

Source

Re-exportsΒ§

pub use mask::*;

ModulesΒ§

account πŸ”’
address πŸ”’
base πŸ”’
cache πŸ”’
database πŸ”’
dummy
generators
hash πŸ”’
mask
ondisk
Database
port_ocaml πŸ”’
proofs
raw
scan_state
sparse_ledger
staged_ledger
transaction_pool
tree πŸ”’
tree_version πŸ”’
util πŸ”’
verifier
zkapps

MacrosΒ§

elog πŸ”’
Print logs on stderr with the prefix [ledger]

StructsΒ§

Account
AccountId
AccountIdOrderable
An AccountId implementing Ord & PartialOrd, reproducing OCaml ordering.
AccountIndex
AccountLegacy
AuthRequiredEncoded
Database
HashesMatrix
MutableFp
Alternative to Rc<Cell<Option<Fp>>> that is Send
Permissions
PermissionsLegacy
PermsConst
ReceiptChainHash
SetVerificationKey
SnappAccount
TimingAsRecord
TimingAsRecordChecked
TokenId
TokenIdLegacy
TokenSymbol
V1
V2
VerificationKey
VerificationKeyWire
VotingFor
ZkAppAccount
ZkAppUri

EnumsΒ§

AuthOrVersion
AuthRequired
ControlTag
DatabaseError
Direction
GetOrCreated
MerklePath
MyCow
MyCowMut
PermissionTo
ProofVerified
Timing
A timed account is an account, which releases its balance to be spent gradually. The process of releasing frozen funds is defined as follows. Until the cliff_time global slot is reached, the initial_minimum_balance of mina is frozen and cannot be spent. At the cliff slot, cliff_amount is released and initial_minimum_balance is effectively lowered by that amount. Next, every vesting_period number of slots, vesting_increment is released, further decreasing the current minimum balance. At some point minimum balance drops to 0, and after that the account behaves like an untimed one. *)
TokenPermissions

ConstantsΒ§

TXN_VERSION_CURRENT
Mina_numbers.Txn_version.current

StaticsΒ§

GLOBAL_SKIP_PARTIAL_EQ

TraitsΒ§

AppendToInputs
BaseLedger
FpExt
ToInputs
TreeVersion

FunctionsΒ§

account_empty_legacy_hash
array_into
array_into_with
check_permission
checked_equal_compressed_key
checked_equal_compressed_key_const_and
checked_verify_merkle_path
implied_root in OCaml
compressed_pubkey_from_address_maybe_with_error
decompress_pk
Not sure if it’s correct I used the same code as there: https://github.com/o1-labs/proof-systems/blob/226de4aeb11b8814327ab832e4fccdce5585f473/signer/src/pubkey.rs#L95-L106
default_zkapp_hash
drop
eval_no_proof
gen_compressed
gen_keypair
get_legacy_hash_of
next_uuid
pid
short_backtrace
Make a backtrace without OCaml dependencies Those are very noisy and are not meaningful for our case Only Rust and Mina codebase symbols should remain.
split_at
split_at_vec
take
take_at
try_array_into_with
Note: Refactor when core::array::try_map is stable https://github.com/rust-lang/rust/issues/79711

Type AliasesΒ§

Address
AddressIterator
Uuid