Expand description
High-level intermediate representation (HIR).
Structs§
- Arena
- HIR arena allocator.
- BinOp
- A binary operation:
a + b,a += b. - Block
- A block of statements.
- Call
Args - A list of function call arguments.
- Contract
- A contract, interface, or library.
- Contract
Id - A
ContractID. - Enum
- An enum.
- EnumId
- An
EnumID. - Error
- A custom error.
- ErrorId
- An
ErrorID. - Event
- An event.
- EventId
- An
EventID. - Expr
- An expression.
- ExprId
- An
ExprID. - Function
- A function.
- Function
Id - A
FunctionID. - Hir
- The high-level intermediate representation (HIR).
- Lit
- A literal:
hex"1234",5.6 ether. - Modifier
- A modifier or base class call.
- Named
Arg - A named argument:
name: value. - Source
- A source file.
- Source
Id - A
SourceID. - Stmt
- A statement.
- StmtTry
- A try statement:
try fooBar(42) returns (...) { ... } catch (...) { ... }. - Struct
- A struct.
- Struct
Id - A
StructID. - TryCatch
Clause - Clause of a try/catch block:
returns/catch (...) { ... }. - Type
- A type name.
- Type
Array - An array type.
- Type
Function - A function type name.
- Type
Mapping - A mapping type.
- Udvt
- A user-defined value type.
- UdvtId
- An
UdvtID. - UnOp
- A unary operation:
!x,-x,x++. - Variable
- A constant or variable declaration.
- Variable
Id - A
VariableID.
Enums§
- BinOp
Kind - A kind of binary operation.
- Call
Args Kind - A list of function call argument expressions.
- Contract
Kind - The kind of contract.
- Data
Location - A storage location.
- Elementary
Type - Elementary/primitive type.
- Expr
Kind - A kind of expression.
- Function
Kind - A kind of function.
- Item
- ItemId
- Loop
Source - The loop type that yielded an
StmtKind::Loop. - Res
- Resolved name.
- State
Mutability - Stmt
Kind - A kind of statement.
- Type
Kind - The kind of a type.
- UnOp
Kind - A kind of unary operation.
- VarKind
- The kind of variable.
- VarMut
- The mutability of a variable.
- Visibility
- Visibility ordered from restricted to unrestricted.
Traits§
- Visit
- HIR traversal.