Representation of the Abstract Syntax Tree for Fabrique source code. More...
Classes | |
class | Action |
A build action that can transform inputs into outputs. More... | |
class | Argument |
An argument being passed to an action or function (caller-side). More... | |
class | ASTDump |
Backend that prints the AST as a (not very pretty) tree. More... | |
class | BinaryOperation |
An operation with two operands. More... | |
class | BoolLiteral |
A literal 'true' or 'false' value in code. More... | |
class | Call |
A call to a function or build action. More... | |
class | CompoundExpression |
An expression that can contain intermediate values. More... | |
class | Conditional |
A function allows users to create build abstractions. More... | |
class | DebugTracePoint |
An operation with two operands. More... | |
class | EvalContext |
A context for evaluating AST Expression objects. More... | |
class | Expression |
Base class for expressions that can be evaluated. More... | |
class | FieldAccess |
An expression that imports a Fabrique module. More... | |
class | FieldQuery |
An expression that imports a Fabrique module. More... | |
class | FileList |
A list of files, with optional arguments that can be applied to each file. More... | |
class | Filename |
A reference to a file on disk (source or target). More... | |
class | ForeachExpr |
An expression that maps list elements into another list. More... | |
class | Function |
A function allows users to create build abstractions. More... | |
class | HasParameters |
A mixin type for something that can be called with parameters. More... | |
class | HasScope |
A mixin type for something that has a Scope. More... | |
class | Identifier |
The name of a value, function, parameter or argument. More... | |
class | Import |
An expression that imports a Fabrique module. More... | |
class | IntLiteral |
An integer value in code. More... | |
class | List |
A list of same-typed expressions. More... | |
class | Literal |
An expression whose value is literally expressed in the source file. More... | |
class | Mapping |
An expression that maps a sequence into a variable (e.g., at the beginning of a foreach loop). More... | |
class | Node |
Base class for expressions that can be evaluated. More... | |
class | Parameter |
A formal parameter in a fabrique::ast::Function. More... | |
class | Parser |
Parses Fabrique files as driven by flex/byacc. More... | |
class | Scope |
A scope is a container for name->value mappings. More... | |
class | SomeValue |
A value boxed up in a maybe type. More... | |
class | StringLiteral |
A string value enclosed by single or double quotes. More... | |
class | StructInstantiation |
A list of same-typed expressions. More... | |
class | SymbolReference |
A reference to a named symbol. More... | |
class | UnaryOperation |
An operation with two operands. More... | |
class | Value |
Base class for expressions that can be evaluated. More... | |
class | Visitor |
Interface for visitors that walk the AST. More... | |
Typedefs | |
typedef PtrVec< Expression > | ExprVec |
Representation of the Abstract Syntax Tree for Fabrique source code.