Mavryk_shell_context.Proxy_delegate_maker
val of_memory_tree :
Mavryk_context_memory.Context.tree ->
Mavryk_protocol_environment.Proxy_delegate.t
of_memory_tree t
creates a delegate that is backed by the tree t
. This is an alternative to delegating to a distant endpoint by doing RPCs (as done in the client, see e.g. proto_alpha/lib_client/proxy.ml
). As delegates created by of_memory_tree
are backed by an in-memory tree, they are as fast as they can be.
This constructor is easier to use than of_memory_context
, because it requires only a tree of data; not a context. This constructor is typically useful for tests.
val of_memory_context :
Mavryk_context_memory.Context.t ->
Mavryk_protocol_environment.Proxy_delegate.t
of_memory_context m
creates a delegate that is backed by the tree underlying m
. This is an alternative to delegating to a distant endpoint by doing RPCs (as done in the client, see e.g. proto_alpha/lib_client/proxy.ml
). As delegates created by of_memory_context
are backed by an in-memory tree, they are as fast as they can be.
This constructor is slightly harder to use than of_memory_tree
, because it requires a full-fledged context instead of a tree (a context contains a tree, so a context is harder to obtain).
val make_index : context_path:string -> Mavryk_context.Context.index Lwt.t
make_index context_path
creates an index that is suitable for being passed to of_index
.
val of_index :
index:Mavryk_context.Context.index ->
Mavryk_crypto.Hashed.Context_hash.t ->
Mavryk_protocol_environment.Proxy_delegate.t
Mavryk_base.TzPervasives.tzresult
Lwt.t
of_index index ctxt_hash
creates a delegate that checkouts the given index at the given ctxt_hash
. It fails in the error monad if the hash is unknown. Otherwise it returns a delegate that queries the tree of data at this hash.
This constructor is the hardest to use of all of this file, because to obtain an index
, you need a full-fledged context on disk.