Module ast

Source

Re-exports§

pub use crate::errors::Error;
pub use crate::ids::Vector;
pub use builtins::*;
pub use expressions::*;
pub use gast::*;
pub use krate::*;
pub use meta::*;
pub use names::*;
pub use types::*;
pub use types_utils::*;
pub use values::*;
pub use visitor::*;

Modules§

builtins
This file contains information about the builtin functions/types/traits definitions
expressions
Implements expressions: paths, operands, rvalues, lvalues
expressions_utils
This file groups everything which is linked to implementations about crate::expressions
gast
Definitions common to crate::ullbc_ast and crate::llbc_ast
gast_utils
Implementations for crate::gast
krate
llbc_ast
LLBC
llbc_ast_utils
Implementations for crate::llbc_ast
meta
Meta-information about programs (spans, etc.).
meta_utils
This file groups everything which is linked to implementations about crate::meta
names
Defines some utilities for the variables
names_utils
Defines some utilities for crate::names
types
types_utils
This file groups everything which is linked to implementations about crate::types
ullbc_ast
“Unstructured LLBC” ast (ULLBC). This is LLBC before the control-flow reconstruction. In effect, this is a cleaned up version of MIR.
ullbc_ast_utils
Implementations for crate::ullbc_ast
values
Contains definitions for variables and constant values.
values_utils
Implementations for crate::values
visitor
Defines two overrideable visitor traits that can be used to conveniently traverse the whole contents of an item. This is useful when e.g. dealing with types, which show up pretty much everywhere in the ast.