Skip to content
Juvix imports

module arch.node.types.anoma_message;

import arch.node.engines.ticker_messages open using {TickerMsg};
import arch.node.engines.identity_management_messages open using {IdentityManagementMsg};
import arch.node.engines.decryption_messages open using {DecryptionMsg};
import arch.node.engines.encryption_messages open using {EncryptionMsg};
import arch.node.engines.commitment_messages open using {CommitmentMsg};
import arch.node.engines.verification_messages open using {VerificationMsg};
import arch.node.engines.reads_for_messages open using {ReadsForMsg};
import arch.node.engines.signs_for_messages open using {SignsForMsg};
import arch.node.engines.naming_messages open using {NamingMsg};

Anoma Message

The Anoma message type contains all admissible messages that can be sent between nodes in the network. An Anoma message is of the type Msg. Each constructor of the type Msg corresponds to a specific type of message comming from a specific engine. For example, the engine TickerEngine has a corresponding message type TickerMsg.

type Msg :=
| MsgTicker TickerMsg
| MsgIdentityManagement IdentityManagementMsg
| MsgDecryption DecryptionMsg
| MsgEncryption EncryptionMsg
| MsgCommitment CommitmentMsg
| MsgVerification VerificationMsg
| MsgReadsFor ReadsForMsg
| MsgSignsFor SignsForMsg
| MsgNaming NamingMsg;