OpenVDB
12.1.0
|
Wrapper struct to represent "native" function arguments; that is, the set of Value type that the AX grammar supports. NativeArguments have two benefits; they support casting and implicit function matching through FunctionGroups and can be used directly in IR generators (to leverage the AX Value API). Functions can still be generated and called with "non-native" arguments, but in these cases FunctionGroup::execute must result in an explicit signature match. More...
#include <openvdb_ax/codegen/FunctionTypes.h>
Public Member Functions | |
NativeArguments ()=default | |
NativeArguments (const std::initializer_list< Value > &args) | |
NativeArguments (const std::vector< Value > &args) | |
NativeArguments (NativeArguments &&)=default | |
NativeArguments (const NativeArguments &)=default | |
NativeArguments & | operator= (NativeArguments &&)=default |
NativeArguments & | operator= (const NativeArguments &)=default |
size_t | size () const |
Value & | operator[] (size_t pos) |
const Value & | operator[] (size_t pos) const |
void | AddArg (const Value &val) |
OPENVDB_AX_API NativeArguments | Cast (const Function &F, llvm::IRBuilder<> &B) const |
Cast these arguments to match the given function's signature. More... | |
Wrapper struct to represent "native" function arguments; that is, the set of Value type that the AX grammar supports. NativeArguments have two benefits; they support casting and implicit function matching through FunctionGroups and can be used directly in IR generators (to leverage the AX Value API). Functions can still be generated and called with "non-native" arguments, but in these cases FunctionGroup::execute must result in an explicit signature match.
|
default |
|
inline |
|
inlineexplicit |
|
default |
|
default |
|
inline |
OPENVDB_AX_API NativeArguments Cast | ( | const Function & | F, |
llvm::IRBuilder<> & | B | ||
) | const |
Cast these arguments to match the given function's signature.
|
default |
|
default |
|
inline |
|
inline |
|
inline |