Expand description
SolScript Abstract Syntax Tree (Solidity-Style)
This crate defines all AST node types for the SolScript language.
Structs§
- Arg
- Array
Expr - Array
Type - Array type:
T[](dynamic) orT[N](fixed) - Assign
Expr - Attribute
- Attribute
Arg - Binary
Expr - Block
- Call
Expr - Constructor
Def - Contract
Def - Delete
Stmt - Emit
Stmt - EnumDef
- Enum
Variant - Error
Def - Error
Param - Event
Def - Event
Param - Expr
Stmt - Field
Access Expr - FnDef
- FnSig
- ForStmt
- Generic
Args - Generic
Param - Generic
Params - Ident
- IfExpr
- IfStmt
- Import
Item - Import
Stmt - Index
Expr - Interface
Def - Mapping
Type - Mapping type:
mapping(KeyType => ValueType) - Method
Call Expr - Modifier
Def - Modifier
Invocation - NewExpr
- Param
- Program
- A complete SolScript program (compilation unit)
- Require
Stmt - Return
Param - Return
Stmt - Revert
Stmt - Selfdestruct
Stmt - Span
- A span representing a range in the source code
- Spanned
- A value with an associated span
- State
Var - Struct
Def - Struct
Field - Ternary
Expr - Tuple
Expr - Type
Path - A type path:
uint256,address,MyContract - Type
Tuple - A tuple type:
(T, U, V) - Unary
Expr - VarDecl
Stmt - While
Stmt
Enums§
- Assign
Op - Attribute
Value - Binary
Op - Contract
Member - Else
Branch - Expr
- ForInit
- IfExpr
Else - Item
- Top-level items
- Literal
- Primitive
Type - Built-in primitive types (Solidity-style naming)
- Revert
Kind - State
Mutability - Stmt
- Storage
Location - Type
Expr - A type expression in the source code
- UnaryOp
- Visibility