OGS
ExprtkUtils.h File Reference
#include <exprtk.hpp>
#include <map>
#include <memory>
#include <string>
#include <string_view>
#include <vector>
#include "BaseLib/Error.h"
#include "MathLib/InterpolationAlgorithms/PiecewiseLinearInterpolation.h"
#include "SpatialPosition.h"
Include dependency graph for ExprtkUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ParameterLib::CurveWrapper
struct  ParameterLib::SymbolTableCache

Namespaces

namespace  ParameterLib

Functions

template<typename T>
std::vector< exprtk::expression< T > > ParameterLib::compileExpressions (exprtk::symbol_table< T > &symbol_table, std::vector< std::string > const &string_expressions)
bool ParameterLib::isBuiltinSymbol (std::string_view const name)
bool ParameterLib::hasSpatialVariables (std::vector< std::string > const &variables)
exprtk::symbol_table< double > ParameterLib::createBaseSymbolTable (bool spatial_position_is_required)
void ParameterLib::registerCurveWrappers (exprtk::symbol_table< double > &symbol_table, std::vector< std::string > const &curve_names, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation > > const &curves, std::map< std::string, CurveWrapper > &curve_wrappers)
template std::vector< exprtk::expression< double > > ParameterLib::compileExpressions< double > (exprtk::symbol_table< double > &, std::vector< std::string > const &)
std::vector< std::string > ParameterLib::collectVariables (std::vector< std::string > const &expression_strings)
std::vector< std::string > ParameterLib::collectUsedCurveNames (std::vector< std::string > const &expression_symbol_names, std::map< std::string, std::unique_ptr< MathLib::PiecewiseLinearInterpolation > > const &curves)
 Returns the subset of expression_symbol_names that are keys in curves.