Module Mavryk_client_001_PtAtLas.Client_proto_fa12

Client_proto_fa12 implements built-in support for the FA1.2 standard. This module features functions to check whether a contract implements the standard interface and to interact with such contracts using high-level actions that model the entrypoint calls.

This module also provides functions to unwrap Micheline values into actions, which can be useful for indexers or applications using this module to interpret transactions on FA1.2 contracts as FA1.2 operations.

type callback_contract = Mavryk_protocol_001_PtAtLas.Protocol.Alpha_context.Contract.t * string option

A callback contract is represented by an address and a possible entrypoint on which the transaction is done.

val print_action : Stdlib.Format.formatter -> action -> unit
val action_encoding : action Mavryk_base.TzPervasives.Data_encoding.encoding

convert_wrapped_parameter_into_action cctxt ~chain ~block ~contract parameter converts a wrapped FA1.2 contract parameter into the corresponding FA1.2 action.

That is, it takes a contract parameter on the form C_1 .. (C_n ... <entrypoint argument> )) where C_1 ... C_n is a sequence of Left/Right constructors. It finds the entrypoint corresponding to that path in contract's interface. The result of the function is the <entrypoint arguments> applied to the action corresponding to that entrypoint.

Check whether a contract has an FA1.2 interface.

type token_transfer = {
  1. token_contract : string;
  2. destination : string;
  3. amount : Z.t;
  4. tez_amount : string option;
  5. fee : string option;
  6. gas_limit : Mavryk_protocol_001_PtAtLas.Protocol.Alpha_context.Gas.Arith.integral option;
  7. storage_limit : Z.t option;
}

Single transfer operation.

val token_transfer_encoding : token_transfer Mavryk_base.TzPervasives.Data_encoding.t

Inject a batch of token transfers.

Run the action without injecting it. Only for views.