Tezos_raw_protocol_013_PtJakart.Contract_reprThis module defines identifiers for two basic types of contracts. It also specifies how to compute originated contract's hash from origination nonce.
type t = private | Implicit of Tezos_protocol_environment_013_PtJakart.Signature.Public_key_hash.t| Originated of Contract_hash.tA contract is simply an account on the blockchain ledger. There are two types of contracts:
An implicit account is identified by the hash of the public key which was used to create it. The owner of the corresponding private key is the holder of the account. An originated contract's hash is derived from its origination nonce (see below).
type contract = tinclude Tezos_protocol_environment_013_PtJakart.Compare.S
with type t := contractval in_memory_size : t -> Cache_memory_helpers.sintval implicit_contract :
Tezos_protocol_environment_013_PtJakart.Signature.Public_key_hash.t ->
contractval is_implicit :
contract ->
Tezos_protocol_environment_013_PtJakart.Signature.Public_key_hash.t optionval originated_contract : Origination_nonce.t -> contractoriginated_contract nonce is the contract address originated from nonce.
val originated_contracts :
since:Origination_nonce.t ->
until:Origination_nonce.t ->
contract listoriginated_contracts ~since ~until is the contract addresses originated from since until until. The operation hash of nonce since and until must be the same or it will fail with an assert. since < until or the returned list is empty
val is_originated : contract -> Contract_hash.t optionval to_b58check : contract -> stringval of_b58check :
string ->
contract Tezos_protocol_environment_013_PtJakart.Error_monad.tzresultval pp :
Tezos_protocol_environment_013_PtJakart.Format.formatter ->
contract ->
unitval pp_short :
Tezos_protocol_environment_013_PtJakart.Format.formatter ->
contract ->
unitval encoding : contract Tezos_protocol_environment_013_PtJakart.Data_encoding.tval cases :
('a -> contract option) ->
(contract -> 'a) ->
'a Tezos_protocol_environment_013_PtJakart.Data_encoding.case listcases f g exports the Data_encoding.cases used to define encoding.
The only reason why we export that is to let Destination_repr.encoding use it. This allows the latter to be compatible with encoding, which is of key importance for backward compatibility reasons.
val rpc_arg : contract Tezos_protocol_environment_013_PtJakart.RPC_arg.argmodule Index : Storage_description.INDEX with type t = t