Expand description
This provides the AST for the decompiler.
Modules§
- array_
access - Represents an array access node.
- array_
kind - Represents an array kind
- array_
node - Represents an array
- assignment
- Contains the specifications for any AstNodes that are assignments
- ast_
enum_ type - Holds the macro that generates variants for the AST nodes.
- bin_op
- Represents binary operations in the AST.
- block
- Represents a “block” of code in the AST.
- control_
flow - Represents a control flow node in the AST.
- expr
- Contains the specifications for any AstNodes that are expressions
- func_
call - Contains the specifications for any AstNodes that are function calls.
- function
- Contains the specifications for any AstNodes that are functions.
- identifier
- Contains the specifications for any AstNodes that are identifiers.
- literal
- Contains the specifications for any AstNodes that are literals.
- member_
access - Contains the specifications for any AstNodes that are member accesses.
- meta
- Contains the specifications for any AstNodes that are metadata.
- new
- Represents the new
- new_
array - Represents a new array node in the AST.
- node_id
- A node identifier
- phi
- Represents a phi node in the AST.
- phi_
array - Represents an unmerged array
- ptr
- Represents a pointer The AST pointer.
- range
- Represents a range of values in the AST.
- ret
- Represents a return node in the AST.
- ssa
- Represents SSA versioning for the AST.
- statement
- Represents a statement node in the AST.
- unary_
op - Represents unary operations in the AST.
- vbranch
- Represents a virtual branch
- visitors
- Represents the visitor pattern for the AST.
Enums§
- AstKind
- Represents an AST node.
- AstNode
Error - Represents an error that occurred while converting an AST node.
Traits§
- AstVisitable
- Trait for all AST nodes.
Functions§
- emit
- Emits a node into a string.
- new_
acylic_ condition - Creates a new acyclic condition
- new_
array - Creates a new array node.
- new_
array_ access - Creates a new array access node.
- new_
assignment - Creates a new AstNode for a statement.
- new_
bin_ op - Creates binary operation node.
- new_
bool - Creates a new ExprNode for a literal boolean.
- new_
cyclic_ condition - Creates a new cyclic condition
- new_
do_ while - Creates a new do while loop
- new_
else - Creates a new else statement
- new_
float - Creates a new ExprNode for a literal float.
- new_fn
- Creates a new function node.
- new_
fn_ call - Creates a new function call node, with just the arguments
- new_
fn_ call_ normal - Creates a new function call node.
- new_for
- Creates a new for loop
- new_id
- Creates a new AssignableExpr for an identifier
- new_
id_ with_ version - Creates a new AssignableExpr for an identifier with an SSA version.
- new_if
- Creates a new if statement
- new_
member_ access - Creates a new member access node.
- new_new
- Creates a new new node.
- new_
null - Creates a new ExprNode for a literal null.
- new_num
- Creates a new ExprNode for a literal number.
- new_phi
- Creates a new unresolved phi node.
- new_
phi_ array - Creates a new phi array node.
- new_
range - Creates a new range node.
- new_
return - Creates a new return node.
- new_str
- Creates a new ExprNode for a literal string.
- new_
unary_ op - Creates a new unary operation node.
- new_
uninitialized_ array - Creates a new uninitialized array node with a given size.
- new_
virtual_ branch - Creates a new virtual branch node.
- new_
while - Creates a new while loop
- new_
with - Creates a new with statement