package tezos-protocol-012-Psithaca

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error +=
  1. | Balance_too_low of Contract_repr.contract * Tez_repr.t * Tez_repr.t
  2. | Counter_in_the_past of Contract_repr.contract * Z.t * Z.t
  3. | Counter_in_the_future of Contract_repr.contract * Z.t * Z.t
  4. | Non_existing_contract of Contract_repr.contract
  5. | Empty_implicit_contract of Tezos_crypto.Signature.public_key_hash
  6. | Empty_implicit_delegated_contract of Tezos_crypto.Signature.public_key_hash
  7. | Inconsistent_public_key of Tezos_crypto.Signature.public_key * Tezos_crypto.Signature.public_key
  8. | Failure of string
val allocated : Raw_context.t -> Contract_repr.t -> (bool, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

allocated ctxt contract returns true if and only if the contract is stored in Storage.Contract.Balance.

val exists : Raw_context.t -> Contract_repr.t -> (bool, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

exists ctxt contract returns true if and only if either the contract is originated or it is (implicit and) "allocated".

val must_exist : Raw_context.t -> Contract_repr.t -> (unit, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

must_exist ctxt contract fails with the Non_existing_contract error if exists ctxt contract returns false. Even though this function is gas-free, it is always called in a context where some gas consumption is guaranteed whenever necessary. The first context is that of a transfer operation, and in that case the base cost of a manager operation (Micheclson_v1_gas.Cost_of.manager_operation) is consumed. The second context is that of an activation operation, and in that case no gas needs to be consumed since that operation is not a manager operation.

val must_be_allocated : Raw_context.t -> Contract_repr.t -> (unit, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

must_be_allocated ctxt contract fails when the contract is not allocated. It fails with Non_existing_contract if the contract is originated, and it fails with Empty_implicit_contract if the contract is implicit.

val check_counter_increment : Raw_context.t -> Tezos_crypto.Signature.public_key_hash -> Z.t -> (unit, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val increment_counter : Raw_context.t -> Tezos_crypto.Signature.public_key_hash -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_balance : Raw_context.t -> Contract_repr.t -> (Tez_repr.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_balance_carbonated : Raw_context.t -> Contract_repr.t -> (Raw_context.t * Tez_repr.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_counter : Raw_context.t -> Tezos_crypto.Signature.public_key_hash -> (Z.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_script_code : Raw_context.t -> Contract_repr.t -> (Raw_context.t * Script_repr.lazy_expr option, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_script : Raw_context.t -> Contract_repr.t -> (Raw_context.t * Script_repr.t option, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val get_storage : Raw_context.t -> Contract_repr.t -> (Raw_context.t * Script_repr.expr option, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
module Legacy_big_map_diff : sig ... end
val update_script_storage : Raw_context.t -> Contract_repr.t -> Script_repr.expr -> Lazy_storage_diff.diffs option -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val credit_only_call_from_token : Raw_context.t -> Contract_repr.t -> Tez_repr.t -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val spend_only_call_from_token : Raw_context.t -> Contract_repr.t -> Tez_repr.t -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val raw_originate : Raw_context.t -> prepaid_bootstrap_storage:bool -> Contract_repr.t -> script:(Script_repr.t * Lazy_storage_diff.diffs option) -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

raw_originate ctxt ~prepaid_bootstrap_storage contract ~script originates the contract parameter. The storage space allocated by this origination is considered to be free of charge or to have been already paid for by the user, if and only if prepaid_bootstrap_storage is true. In particular, the amount of space allocated by this origination will be part of the consumed space to pay for returned by the next call to Fees_storage.record_paid_storage_space ctxt contract, if and only if prepaid_bootstrap_storage is false.

val fresh_contract_from_current_nonce : Raw_context.t -> (Raw_context.t * Contract_repr.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result
val originated_from_current_nonce : since:Raw_context.t -> until:Raw_context.t -> (Contract_repr.t list, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val init : Raw_context.t -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val used_storage_space : Raw_context.t -> Contract_repr.t -> (Z.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val paid_storage_space : Raw_context.t -> Contract_repr.t -> (Z.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val set_paid_storage_space_and_return_fees_to_pay : Raw_context.t -> Contract_repr.t -> Z.t -> (Z.t * Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t
val increase_balance_only_call_from_token : Raw_context.t -> Contract_repr.t -> Tez_repr.t -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

Increases the balance of a contract. Calling this function directly may break important invariants. Consider calling credit instead.

val decrease_balance_only_call_from_token : Raw_context.t -> Contract_repr.t -> Tez_repr.t -> (Raw_context.t, Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.error Tezos_protocol_environment_012_Psithaca__Environment.Error_monad.trace) Stdlib.result Lwt.t

Decreases the balance of a contract. Calling this function directly may break important invariants. Consider calling spend instead.

OCaml

Innovation. Community. Security.