Public Member Functions | List of all members
llvmexpr Class Reference
Inheritance diagram for llvmexpr:

Public Member Functions

 llvmexpr (const std::string &expr, const ExprType &type=ExprType().FP(3))
 Constructor that takes the expression to parse. More...
- Public Member Functions inherited from SeExpr2::Expression
 Expression (EvaluationStrategy be=Expression::defaultEvaluationStrategy)
 Expression (const std::string &e, const ExprType &type=ExprType().FP(3), EvaluationStrategy be=Expression::defaultEvaluationStrategy, const Context &context=Context::global())
virtual ~Expression ()
void setDesiredReturnType (const ExprType &type)
void setExpr (const std::string &e)
const std::string & getExpr () const
 Get the string that this expression is currently set to evaluate. More...
bool syntaxOK () const
bool isValid () const
const std::string & parseError () const
const std::vector< Error > & getErrors () const
const std::vector< std::pair
< int, int > > & 
getComments () const
bool isConstant () const
bool usesVar (const std::string &name) const
bool usesFunc (const std::string &name) const
bool isThreadSafe () const
void setThreadUnsafe (const std::string &functionName) const
const std::vector< std::string > & getThreadUnsafeFunctionCalls () const
bool wantVec () const
bool isVec () const
const ExprTypereturnType () const
void evalMultiple (VarBlock *varBlock, int outputVarBlockOffset, size_t rangeStart, size_t rangeEnd) const
 Evaluate multiple blocks. More...
const double * evalFP (VarBlock *varBlock=nullptr) const
const char * evalStr (VarBlock *varBlock=nullptr) const
void reset ()
virtual ExprVarRefresolveVar (const std::string &name) const
virtual ExprFuncresolveFunc (const std::string &name) const
void addError (const std::string &error, const int startPos, const int endPos) const
void addComment (int pos, int length)
const Contextcontext () const
void setContext (const Context &context)
void debugPrintParseTree () const
void debugPrintInterpreter () const
void debugPrintLLVM () const
void setVarBlockCreator (const VarBlockCreator *varBlockCreator)
const VarBlockCreatorvarBlockCreator () const
void addVar (const char *n) const
 add local variable (this is for internal use) More...
void addFunc (const char *n) const
 add function evaluation (this is for internal use) More...

Additional Inherited Members

- Public Types inherited from SeExpr2::Expression
enum  EvaluationStrategy { UseInterpreter, UseLLVM }
 Types of evaluation strategies that are available. More...
- Static Public Attributes inherited from SeExpr2::Expression
static EvaluationStrategy defaultEvaluationStrategy = chooseDefaultEvaluationStrategy()
 What evaluation strategy to use by default. More...
static bool debugging = getenv("SE_EXPR_DEBUG") != 0
 Whether to debug expressions. More...
- Protected Member Functions inherited from SeExpr2::Expression
void prepIfNeeded () const
- Protected Attributes inherited from SeExpr2::Expression
ExprType _desiredReturnType
ExprVarEnvBuilder _envBuilder

Detailed Description

Definition at line 26 of file llvmtest.cpp.

Constructor & Destructor Documentation

llvmexpr::llvmexpr ( const std::string &  expr,
const ExprType type = ExprType().FP(3) 

Constructor that takes the expression to parse.

Definition at line 29 of file llvmtest.cpp.

The documentation for this class was generated from the following file: