package octez-shell-libs
Code that is used both by protocol-dependent code and by other code. Note that we don't want this code in proxy_proto.ml because it's independent from the protocol and we neither want this code in proxy_getter.ml, because it would create a cyclic dependency between proxy_proto.ml and proxy_getter.ml
module Local = Tezos_context_memory.Context
type proxy_getter_input = {
rpc_context : Tezos_rpc.Context.simple;
(*How to perform RPC calls
*)mode : mode;
(*Whether
*)octez-client
ortezos-proxy-server
is runningchain : Tezos_shell_services.Block_services.chain;
(*The chain involved in the RPC call
*)block : Tezos_shell_services.Block_services.block;
(*The block involved in the RPC call
*)
}
A dumb container, used to perform RPC calls concerning a specific chain and block. In other words this container is used to perform RPC calls of the form /chains/<chain>/blocks/<block>
where the <...> received the value of the corresponding field of this record.
The result of setting a leaf. A mutation if done in place, otherwise a fresh value. We need this type because the proxy implementation returns a value whereas the light mode's implementation performs a mutation (because of Irmin under the hood).
module type TREE = sig ... end
An ad-hoc module type used by implementations of the proxy mode when it uses the ../raw/bytes
RPC to query its distant endpoint. It is ad-hoc because its get
function has the concrete Proxy_context.M.tree
as a return type and because add_leaf
has the concrete Tezos_context_sigs.Context.Proof_types.raw_context
as a parameter (this type is inherited from the return type of the ../raw/bytes
RPC).
module type CORE = sig ... end
Module used by implementations of Proxy_getter.M
.