Module nodes

Source

Structs§

NodeAddressType
NodeAddressType represents an address type node in the AST
NodeAddressTypeField
NodeAddressTypeField represents an address type field node in the AST
NodeBlockchainFetchArguments
NodeBlockchainFetchArguments represents a blockchain fetch arguments node in the AST It contains a vector of arguments
NodeBuiltinArguments
NodeBuiltinArguments represents a list of arguments for a built-in function in the AST
NodeComponentBody
NodeComponentBody represents a component body node in the AST It contains an optional statement block
NodeComponentParameters
NodeComponentParameters represents a component parameters node in the AST It contains a vector of parameters
NodeContractDefinition
NodeContractDefinition represents a contract definition node in the AST It contains a contract name, parameters, optional constraint, fields and components
NodeContractField
NodeContractField represents a contract field node in the AST It contains a typed identifier and a right hand side
NodeContractTypeArguments
NodeContractTypeArguments represents a contract type arguments node in the AST It contains a vector of type arguments
NodeImportDeclarations
NodeImportDeclarations represents a list of import declarations in the AST
NodeLibraryDefinition
NodeLibraryDefinition represents a library definition node in the AST It contains a name and a vector of definitions
NodeMapAccess
NodeMapAccess represents a map access node in the AST It contains an identifier name
NodeParameterPair
NodeParameterPair represents a parameter pair node in the AST It contains an identifier with type
NodePatternMatchClause
NodePatternMatchClause represents a pattern match clause node in the AST It contains a pattern expression and an optional statement block
NodePatternMatchExpressionClause
NodePatternMatchExpressionClause represents a pattern match expression clause node in the AST It contains a pattern and an expression
NodeProcedureDefinition
NodeProcedureDefinition represents a procedure definition node in the AST It contains a name, parameters and a body
NodeProgram
NodeProgram represents a program node in the AST It contains a version, optional import declarations, optional library definition and a contract definition
NodeStatementBlock
NodeStatementBlock represents a statement block node in the AST It contains a vector of statements
NodeTransitionDefinition
NodeTransitionDefinition represents a transition definition node in the AST It contains a name, parameters and a body Example: transition Transfer (from: ByStr20, to: ByStr20, amount: Uint128) = ...
NodeTypeAnnotation
NodeTypeAnnotation represents a type annotation node in the AST It contains a type name
NodeTypeMapEntry
NodeTypeMapEntry represents a type map entry node in the AST
NodeTypedIdentifier
NodeTypedIdentifier represents a typed identifier node in the AST It contains an identifier name and an annotation
NodeWithConstraint
NodeWithConstraint represents a with constraint node in the AST It contains an expression
WithMetaData
A wrapper struct that adds source position to an AST node.

Enums§

NodeArgumentPattern
NodeArgumentPattern represents an argument pattern node in the AST It can either be a WildcardArgument, BinderArgument, ConstructorArgument or PatternArgument
NodeAtomicExpression
NodeAtomicExpression represents an atomic expression node in the AST It can either be an AtomicSid or an AtomicLit
NodeByteStr
NodeByteStr represents a byte string node in the AST
NodeComponentDefinition
NodeComponentDefinition represents a component definition node in the AST It can either be a TransitionComponent or a ProcedureComponent
NodeComponentId
NodeComponentId represents a component id node in the AST It can either be a WithTypeLikeName or a WithRegularId
NodeFullExpression
NodeFullExpression represents a full expression node in the AST
NodeImportedName
NodeImportedName represents an imported name node in the AST
NodeLibrarySingleDefinition
NodeLibrarySingleDefinition represents a library single definition node in the AST It can either be a LetDefinition or a TypeDefinition
NodeMessageEntry
NodeMessageEntry represents a message entry node in the AST It can either be a MessageLiteral or a MessageVariable Example: msg = { _tag : "tag", _recipient : "0x123", _amount : "0", param : "value" };
NodeMetaIdentifier
NodeMetaIdentifier represents a meta identifier node in the AST
NodePattern
NodePattern represents a pattern node in the AST It can either be a Wildcard, Binder or Constructor
NodeRemoteFetchStatement
NodeRemoteFetchStatement represents a remote fetch statement node in the AST It can be one of many different types of remote fetch statements
NodeScillaType
NodeScillaType represents a Scilla type node in the AST
NodeStatement
NodeStatement represents a statement node in the AST It can be one of many different types of statements
NodeTypeAlternativeClause
NodeTypeAlternativeClause represents an alternative clause node in the AST It can either be a ClauseType or a ClauseTypeWithArgs
NodeTypeArgument
NodeTypeArgument represents a type argument node in the AST
NodeTypeMapKey
NodeTypeMapKey represents a type map key node in the AST
NodeTypeMapValue
NodeTypeMapValue represents a type map value node in the AST
NodeTypeMapValueAllowingTypeArguments
NodeTypeMapValueAllowingTypeArguments represents a map value allowing type arguments node in the AST It can either be a TypeMapValueNoArgs or a TypeMapValueWithArgs
NodeTypeMapValueArguments
NodeTypeMapValueArguments represents map value arguments node in the AST It can either be an EnclosedTypeMapValue, a GenericMapValueArgument or a MapKeyValueType
NodeTypeNameIdentifier
NodeTypeNameIdentifier represents a type name identifier node in the AST
NodeValueLiteral
NodeValueLiteral represents a value literal node in the AST It can either be a LiteralInt, LiteralHex, LiteralString or LiteralEmptyMap
NodeVariableIdentifier
NodeVariableIdentifier represents a variable identifier node in the AST