package tezos-protocol-alpha
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=55ea1fb8bb3273a7fc270ca8f650d45c56449665619482aad9bc12f3ea736b7e
sha512=fec850fc2d17d7490bbabd5147d62aad13b3aaed8774270f8a38ab419670ed03e0fd30cf8642a97984eca5c2446726fe590ad99c015f7ec50919dc7652f25053
doc/tezos_raw_protocol_alpha/Tezos_raw_protocol_alpha/Script_repr/index.html
Module Tezos_raw_protocol_alpha.Script_repr
Source
Defines a Michelson expression representation as a Micheline node with canonical (int
) location and Michelson_v1_primitives.prim
as content.
Types expr
and node
both define representation of Michelson expressions and are indeed the same type internally, although this is not visible outside Micheline due to interface abstraction.
Locations are used by Micheline mostly for error-reporting and pretty- printing expressions. canonical_location
is simply an int
.
Annotations attached to Michelson expressions.
Represents a Michelson expression as canonical Micheline.
A record containing either an underlying serialized representation of an expression or a deserialized one, or both. If either is absent, it will be computed on-demand.
type 'location michelson_node =
('location, Michelson_v1_primitives.prim)
Tezos_protocol_environment_alpha.Micheline.node
Same as expr
, but used in different contexts, as required by Micheline's abstract interface.
Type t
joins the contract's code and storage in a single record.
Returns (a lower bound on) the cost to deserialize a lazy_expr
. If the expression has already been deserialized (i.e. the lazy expression contains the deserialized value or both the bytes representation and the deserialized value) then the cost is free.
Like force_decode_cost
, excepted that the returned cost does not depend on the internal state of the lazy_expr. This means that the cost is never free (excepted for zero bytes expressions).
Returns the cost to serialize a lazy_expr
. If the expression has already been deserialized (i.e. le lazy expression contains the bytes representation or both the bytes representation and the deserialized value) then the cost is free.
Computes the cost of serializing a given term.
micheline_nodes root
returns the number of internal nodes in the micheline expression held from root
.
val fold :
('loc, 'prim) Tezos_protocol_environment_alpha.Micheline.node ->
'acc ->
('acc ->
('loc, 'prim) Tezos_protocol_environment_alpha.Micheline.node ->
'acc) ->
'acc
fold node i f
traverses node
applying f
on an accumulator initialized by i
.