12 #ifndef OPENVDB_AX_VOLUME_COMPUTE_GENERATOR_HAS_BEEN_INCLUDED 13 #define OPENVDB_AX_VOLUME_COMPUTE_GENERATOR_HAS_BEEN_INCLUDED 18 #include "../compiler/AttributeRegistry.h" 19 #include <openvdb/version.h> 27 namespace codegen_internal {
47 using ComputeGenerator::traverse;
48 using ComputeGenerator::visit;
54 llvm::Value* accessorHandleFromToken(
const std::string&);
55 void getAccessorValue(
const std::string&,
Value);
71 #endif // OPENVDB_AX_VOLUME_COMPUTE_GENERATOR_HAS_BEEN_INCLUDED Attributes represent any access to a primitive value, typically associated with the '@' symbol syntax...
Definition: AST.h:1874
The core visitor framework for code generation.
Visitor object which will generate llvm IR for a syntax tree which has been generated from AX that ta...
Definition: VolumeComputeGenerator.h:32
Options that control how functions behave.
Definition: CompilerOptions.h:24
A Tree is the highest concrete (non-abstract) node in the entire AX AST hierarchy. It represents an entire conversion of a valid AX string.
Definition: AST.h:562
Consolidated llvm types for most supported types.
Definition: Exceptions.h:13
std::shared_ptr< AttributeRegistry > Ptr
Definition: AttributeRegistry.h:42
The function registry which is used for function code generation. Each time a function is visited wit...
Definition: FunctionRegistry.h:39
Logger for collecting errors and warnings that occur during AX compilation.
Definition: Logger.h:57
Intermediate representation of supported AX values.
Intermediate representation wrapper for supported value types in AX as immutable instances.
Definition: Value.h:62
This class stores a list of access names, types and their dependency connections. ...
Definition: AttributeRegistry.h:39
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition: version.h.in:121
A symbol table which can be used to represent a single scoped set of a programs variables. This is simply an unordered map of strings to llvm::Values.
Definition: SymbolTable.h:37
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h.in:218
Visitor object which will generate llvm IR for a syntax tree. This provides the majority of the code ...
Definition: ComputeGenerator.h:87