Cfabrique::ast::EvalContext::AlternateScoping | An object that represents the use of an alternative scope stack and that will restore the original stack on destruction |
Cfabrique::Arguments | Command-line options and arguments after parsing, type-checking, etc |
▼Cfabrique::backend::Backend | Interface for backend classes that convert a DAG to something else (e.g., a Ninja file) |
Cfabrique::backend::DotBackend | A backend that produces GraphViz .dot files |
Cfabrique::backend::MakeBackend | A backend that produces POSIX make files (no BSD or GNU extensions) |
Cfabrique::backend::NinjaBackend | A backend that produces Ninja files |
Cfabrique::backend::NullBackend | A backend that does nothing |
Cfabrique::Bytestream | A ostream-like class that may support formatting |
▼Cfabrique::dag::Callable | A mixin type for something that can be called with parameters |
Cfabrique::dag::Function | A reference to a user- or plugin-defined function |
Cfabrique::dag::Rule | An action that transforms files into other files |
▼Cfabrique::dag::DAGBuilder::Context | An object that can supply a DAGBuilder with names and types |
Cfabrique::ast::EvalContext | A context for evaluating AST Expression objects |
Cfabrique::dag::DAGBuilder | A object that builds DAG nodes in a DAGBuilder::Context |
▼CDescriptor | |
Cfabrique::plugins::SysctlPlugin::Factory | |
Cfabrique::plugins::Which::Factory | |
Cfabrique::plugin::Plugin::Descriptor | Static information about a plugin |
▼Cstd::exception | STL class |
Cfabrique::AssertionFailure | Some code may choose to throw this exception rather than assert() out |
►Cfabrique::OSError | An error that has an OS-specific description |
Cfabrique::PosixError | An OS error that has an errno or equivalent output |
►Cfabrique::SourceCodeException | Base class for exceptions related to invalid source code |
►Cfabrique::SemanticException | A semantic error is present in the Fabrique description |
Cfabrique::dag::UndefinedValueException | An unexpected duplicate was encountered |
►Cfabrique::TypeError | Something is wrong with a fabrique::Type |
Cfabrique::WrongTypeException | Something is wrong with a fabrique::Type |
Cfabrique::SyntaxError | A syntactic error is present in the Fabrique description |
Cfabrique::UserError | An error in user input |
▼Cfabrique::ast::HasParameters | A mixin type for something that can be called with parameters |
Cfabrique::ast::Action | A build action that can transform inputs into outputs |
Cfabrique::ast::Function | A function allows users to create build abstractions |
▼Cfabrique::ast::HasScope | A mixin type for something that has a Scope |
Cfabrique::ast::Import | An expression that imports a Fabrique module |
Cfabrique::ast::StructInstantiation | A list of same-typed expressions |
▼Cfabrique::HasSource | A mixin type for something that has a location in source code |
►Cfabrique::ast::Node | Base class for expressions that can be evaluated |
►Cfabrique::ast::Expression | Base class for expressions that can be evaluated |
Cfabrique::ast::Action | A build action that can transform inputs into outputs |
Cfabrique::ast::Argument | An argument being passed to an action or function (caller-side) |
Cfabrique::ast::BinaryOperation | An operation with two operands |
Cfabrique::ast::Call | A call to a function or build action |
Cfabrique::ast::CompoundExpression | An expression that can contain intermediate values |
Cfabrique::ast::Conditional | A function allows users to create build abstractions |
Cfabrique::ast::DebugTracePoint | An operation with two operands |
Cfabrique::ast::FieldAccess | An expression that imports a Fabrique module |
Cfabrique::ast::FieldQuery | An expression that imports a Fabrique module |
Cfabrique::ast::FileList | A list of files, with optional arguments that can be applied to each file |
Cfabrique::ast::Filename | A reference to a file on disk (source or target) |
Cfabrique::ast::ForeachExpr | An expression that maps list elements into another list |
Cfabrique::ast::Function | A function allows users to create build abstractions |
Cfabrique::ast::Import | An expression that imports a Fabrique module |
Cfabrique::ast::List | A list of same-typed expressions |
Cfabrique::ast::Literal< T > | An expression whose value is literally expressed in the source file |
Cfabrique::ast::SomeValue | A value boxed up in a maybe type |
Cfabrique::ast::StructInstantiation | A list of same-typed expressions |
Cfabrique::ast::SymbolReference | A reference to a named symbol |
Cfabrique::ast::UnaryOperation | An operation with two operands |
Cfabrique::ast::Value | Base class for expressions that can be evaluated |
►Cfabrique::ast::Literal< bool > | |
Cfabrique::ast::BoolLiteral | A literal 'true' or 'false' value in code |
►Cfabrique::ast::Literal< int > | |
Cfabrique::ast::IntLiteral | An integer value in code |
►Cfabrique::ast::Literal< std::string > | |
Cfabrique::ast::StringLiteral | A string value enclosed by single or double quotes |
Cfabrique::ast::Identifier | The name of a value, function, parameter or argument |
Cfabrique::ast::Mapping | An expression that maps a sequence into a variable (e.g., at the beginning of a foreach loop) |
Cfabrique::ast::Parameter | A formal parameter in a fabrique::ast::Function |
Cfabrique::dag::Parameter | The result of evaluating an expression |
►Cfabrique::dag::Value | The result of evaluating an expression |
Cfabrique::dag::Build | An application of a fabrique::dag::Rule to transform File objects |
Cfabrique::dag::File | A reference to a file on disk (source or target) |
Cfabrique::dag::Function | A reference to a user- or plugin-defined function |
Cfabrique::dag::List | The result of evaluating an expression |
Cfabrique::dag::Primitive< T > | The result of evaluating an expression |
Cfabrique::dag::Rule | An action that transforms files into other files |
Cfabrique::dag::Structure | A reference to a file on disk (source or target) |
Cfabrique::dag::Target | A named build target that references a set of files |
►Cfabrique::dag::Primitive< bool > | |
Cfabrique::dag::Boolean | A boolean (true/false) value |
►Cfabrique::dag::Primitive< int > | |
Cfabrique::dag::Integer | An integer (of unspecified precision) |
►Cfabrique::dag::Primitive< std::string > | |
Cfabrique::dag::String | An ASCII string (for now, we should make this Unicode soon) |
Cfabrique::ErrorReport | A non-exceptional representation of a problem in source code |
Cfabrique::SourceCodeException | Base class for exceptions related to invalid source code |
Cfabrique::Token | A token obtained from the Lexer |
Cfabrique::plugin::Loader | Support for loading plugins from shared libraries |
▼Cfabrique::OptionallyTyped | A mixin type for something that may have a Type |
Cfabrique::ast::Identifier | The name of a value, function, parameter or argument |
Cfabrique::ast::Parser | Parses Fabrique files as driven by flex/byacc |
▼Cfabrique::Printable | A thing that can be pretty-printed |
Cfabrique::ast::Node | Base class for expressions that can be evaluated |
►Cfabrique::ast::Scope | A scope is a container for name->value mappings |
Cfabrique::ast::CompoundExpression | An expression that can contain intermediate values |
Cfabrique::dag::DAG | A directed acyclic graph of build actions |
Cfabrique::dag::Parameter | The result of evaluating an expression |
Cfabrique::dag::Value | The result of evaluating an expression |
Cfabrique::ErrorReport | A non-exceptional representation of a problem in source code |
Cfabrique::Join< T > | Joins printable objects into a string, e.g., "a, b, c" or "a b c" |
Cfabrique::OSError | An error that has an OS-specific description |
Cfabrique::SourceCodeException | Base class for exceptions related to invalid source code |
Cfabrique::SourceLocation | A location in the original source code |
Cfabrique::SourceRange | A range of characters in source code |
Cfabrique::Token | A token obtained from the Lexer |
►Cfabrique::Type | The name of a value, function, parameter or argument |
Cfabrique::BooleanType | A type that represents an ordered sequence |
Cfabrique::FileType | A type that represents an ordered sequence |
Cfabrique::FunctionType | A type that represents an ordered sequence |
Cfabrique::IntegerType | A type that represents an ordered sequence |
Cfabrique::MaybeType | A type that represents an ordered sequence |
Cfabrique::RawMaybeType | An unparameterised sequence (e.g., maybe ): used to generate parameterised sequences (e.g., maybe[foo] ) |
Cfabrique::RawSequenceType | An unparameterised sequence (e.g., list ): used to generate parameterised sequences (e.g., list[foo] ) |
Cfabrique::SequenceType | A type that represents an ordered sequence |
Cfabrique::StringType | A type that represents an ordered sequence |
Cfabrique::StructureType | The type of a structure, which contains named, typed, immutable fields |
Cfabrique::UserError | An error in user input |
Cfabrique::plugin::Registry | A registry for naming Fabrique Plugin objects |
Cfabrique::ast::EvalContext::Scope | An object to represent descending in a call stack |
Cfabrique::ast::EvalContext::ScopedValueName | An object for declaring the name of the value whose initializer we are currently evaluating |
▼Cfabrique::SharedLibrary | Platform-agnostic superclass for a shared library |
Cfabrique::PosixSharedLibrary | Platform-agnostic superclass for a shared library |
Cfabrique::TypeContext | A context object that holds state for a compilation (e.g., type objects) |
▼Cfabrique::Typed | A mixin type for something that has a Type |
Cfabrique::ast::Expression | Base class for expressions that can be evaluated |
Cfabrique::ast::Parameter | A formal parameter in a fabrique::ast::Function |
Cfabrique::dag::Parameter | The result of evaluating an expression |
Cfabrique::dag::Value | The result of evaluating an expression |
►Cfabrique::plugin::Plugin | A plugin that provides extra functionality to Fabrique build descriptions |
Cfabrique::plugins::SysctlPlugin | Provides access to the sysctl(3) set of C library functions |
Cfabrique::plugins::Which | Finds files (executables or any other kind of files) in the PATH environment variable |
▼Cfabrique::Uncopyable | An object that cannot be copy-constructed |
Cfabrique::ast::Node | Base class for expressions that can be evaluated |
Cfabrique::ast::Scope | A scope is a container for name->value mappings |
Cfabrique::dag::Parameter | The result of evaluating an expression |
Cfabrique::dag::Value | The result of evaluating an expression |
Cfabrique::Type | The name of a value, function, parameter or argument |
▼Cfabrique::Visitable< Visitor > | An object that can be visited by a vistor |
Cfabrique::ast::Node | Base class for expressions that can be evaluated |
▼Cfabrique::dag::Visitor | Interfact for objects that visit DAG nodes and add functionality |
Cfabrique::dag::Formatter | An object that converts DAG nodes into strings |
▼Cfabrique::ast::Visitor | Interface for visitors that walk the AST |
Cfabrique::ast::ASTDump | Backend that prints the AST as a (not very pretty) tree |
▼CyyFlexLexer | |
Cfabrique::Lexer | Tokenizes Fabrique source code |