Module specifications

Source

Structs§

Full
The type is used to represent the full message. It is used during the deserialization of the message to determine the final type. If the data field is empty, it should be transformed into MessageData. Otherwise into MessageCoin. If the predicate is empty, the usage rules should be Signed, else Predicate.
MessageCoin
The spendable message acts as a standard coin.
MessageData
The retrayable message metadata. It is a message that can’t be used as a coin to pay for fees but can be used to pass metadata to the contract. It may have a non-zero value that will be transferred to the contract as a native asset during the execution. If the execution of the transaction fails, the metadata is not consumed and can be used later until successful execution.
Predicate
The type means that the message is not signed, and the owner is a predicate bytecode. The merkle root from the predicate should be equal to the owner.
Signed
The type means that the message should be signed by the recipient, and the signature(witness) should be stored under the witness_index index in the witnesses vector of the crate::Transaction.