Crate leo_ast

source ·
Expand description

The abstract syntax tree (ast) for a Leo program.

This module contains the Ast type, a wrapper around the Program type. The Ast type is intended to be parsed and modified by different passes of the Leo compiler. The Leo compiler can generate a set of R1CS constraints from any Ast.

leo-ast

Crates.io Authors License

Re-exports

pub use self::access::*;
pub use self::struct::*;
pub use self::common::*;
pub use self::expressions::*;
pub use self::functions::*;
pub use self::groups::*;
pub use self::input::*;
pub use self::mapping::*;
pub use self::passes::*;
pub use self::program::*;
pub use self::statement::*;
pub use self::types::*;
pub use self::value::*;
pub use common::node::*;

Modules

This module contains both a Reducer and Visitor design pattern. These both iterate over the AST.
A Leo program consists of import statements and program scopes.

Macros

Structs

The abstract syntax tree (AST) for a Leo program.