muParser API -
1.35
|
Namespace for mathematical applications. More...
Namespaces | |
Test | |
Namespace for test cases. | |
Classes | |
struct | CbWithUserData |
struct | generic_callable_type |
struct | MathImpl |
A template class for providing wrappers for essential math functions. More... | |
class | Parser |
Mathematical expressions parser. More... | |
class | ParserBase |
Mathematical expressions parser (base parser engine). More... | |
class | ParserByteCode |
Bytecode implementation of the Math Parser. More... | |
class | ParserCallback |
Encapsulation of prototypes for a numerical parser function. More... | |
class | ParserError |
Error class of the parser. More... | |
class | ParserErrorMsg |
A class that handles the error messages. More... | |
class | ParserInt |
Mathematical expressions parser. More... | |
class | ParserToken |
Encapsulation of the data for a single formula token. More... | |
class | ParserTokenReader |
Token reader for the ParserBase class. More... | |
struct | SToken |
struct | TplCallType |
struct | TplCallType< 0 > |
struct | TplCallType< 1 > |
struct | TplCallType< 10 > |
struct | TplCallType< 2 > |
struct | TplCallType< 3 > |
struct | TplCallType< 4 > |
struct | TplCallType< 5 > |
struct | TplCallType< 6 > |
struct | TplCallType< 7 > |
struct | TplCallType< 8 > |
struct | TplCallType< 9 > |
struct | TypeInfo |
A class singling out integer types at compile time using template meta programming. More... | |
struct | TypeInfo< char > |
struct | TypeInfo< int > |
struct | TypeInfo< long > |
struct | TypeInfo< short > |
struct | TypeInfo< unsigned char > |
struct | TypeInfo< unsigned int > |
struct | TypeInfo< unsigned long > |
struct | TypeInfo< unsigned short > |
Typedefs | |
typedef std::map< string_type, ParserCallback > | funmap_type |
Container for Callback objects. | |
typedef MUP_BASETYPE | value_type |
The numeric datatype used by the parser. More... | |
typedef MUP_STRING_TYPE | string_type |
The stringtype used by the parser. More... | |
typedef string_type::value_type | char_type |
The character type used by the parser. More... | |
typedef std::basic_stringstream< char_type, std::char_traits< char_type >, std::allocator< char_type > > | stringstream_type |
Typedef for easily using stringstream that respect the parser stringtype. | |
typedef std::map< string_type, value_type * > | varmap_type |
Type used for storing variables. | |
typedef std::map< string_type, value_type > | valmap_type |
Type used for storing constants. | |
typedef std::map< string_type, std::size_t > | strmap_type |
Type for assigning a string name to an index in the internal string table. | |
typedef void(* | erased_fun_type) () |
Function type used to erase type. Voluntarily needs explicit cast with all other fun_type. | |
typedef value_type(* | fun_type0) () |
Callback type used for functions without arguments. | |
typedef value_type(* | fun_type1) (value_type) |
Callback type used for functions with a single arguments. | |
typedef value_type(* | fun_type2) (value_type, value_type) |
Callback type used for functions with two arguments. | |
typedef value_type(* | fun_type3) (value_type, value_type, value_type) |
Callback type used for functions with three arguments. | |
typedef value_type(* | fun_type4) (value_type, value_type, value_type, value_type) |
Callback type used for functions with four arguments. | |
typedef value_type(* | fun_type5) (value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with five arguments. | |
typedef value_type(* | fun_type6) (value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with six arguments. | |
typedef value_type(* | fun_type7) (value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with seven arguments. | |
typedef value_type(* | fun_type8) (value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with eight arguments. | |
typedef value_type(* | fun_type9) (value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with nine arguments. | |
typedef value_type(* | fun_type10) (value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with ten arguments. | |
typedef value_type(* | fun_userdata_type0) (void *) |
Callback type with user data (not null) used for functions without arguments. | |
typedef value_type(* | fun_userdata_type1) (void *, value_type) |
Callback type with user data (not null) used for functions with a single arguments. | |
typedef value_type(* | fun_userdata_type2) (void *, value_type, value_type) |
Callback type with user data (not null) used for functions with two arguments. | |
typedef value_type(* | fun_userdata_type3) (void *, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with three arguments. | |
typedef value_type(* | fun_userdata_type4) (void *, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with four arguments. | |
typedef value_type(* | fun_userdata_type5) (void *, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with five arguments. | |
typedef value_type(* | fun_userdata_type6) (void *, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with six arguments. | |
typedef value_type(* | fun_userdata_type7) (void *, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with seven arguments. | |
typedef value_type(* | fun_userdata_type8) (void *, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with eight arguments. | |
typedef value_type(* | fun_userdata_type9) (void *, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with nine arguments. | |
typedef value_type(* | fun_userdata_type10) (void *, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with ten arguments. | |
typedef value_type(* | bulkfun_type0) (int, int) |
Callback type used for functions without arguments. | |
typedef value_type(* | bulkfun_type1) (int, int, value_type) |
Callback type used for functions with a single arguments. | |
typedef value_type(* | bulkfun_type2) (int, int, value_type, value_type) |
Callback type used for functions with two arguments. | |
typedef value_type(* | bulkfun_type3) (int, int, value_type, value_type, value_type) |
Callback type used for functions with three arguments. | |
typedef value_type(* | bulkfun_type4) (int, int, value_type, value_type, value_type, value_type) |
Callback type used for functions with four arguments. | |
typedef value_type(* | bulkfun_type5) (int, int, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with five arguments. | |
typedef value_type(* | bulkfun_type6) (int, int, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with six arguments. | |
typedef value_type(* | bulkfun_type7) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with seven arguments. | |
typedef value_type(* | bulkfun_type8) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with eight arguments. | |
typedef value_type(* | bulkfun_type9) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with nine arguments. | |
typedef value_type(* | bulkfun_type10) (int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with ten arguments. | |
typedef value_type(* | bulkfun_userdata_type0) (void *, int, int) |
Callback type with user data (not null) used for functions without arguments. | |
typedef value_type(* | bulkfun_userdata_type1) (void *, int, int, value_type) |
Callback type with user data (not null) used for functions with a single arguments. | |
typedef value_type(* | bulkfun_userdata_type2) (void *, int, int, value_type, value_type) |
Callback type with user data (not null) used for functions with two arguments. | |
typedef value_type(* | bulkfun_userdata_type3) (void *, int, int, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with three arguments. | |
typedef value_type(* | bulkfun_userdata_type4) (void *, int, int, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with four arguments. | |
typedef value_type(* | bulkfun_userdata_type5) (void *, int, int, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with five arguments. | |
typedef value_type(* | bulkfun_userdata_type6) (void *, int, int, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with six arguments. | |
typedef value_type(* | bulkfun_userdata_type7) (void *, int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with seven arguments. | |
typedef value_type(* | bulkfun_userdata_type8) (void *, int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with eight arguments. | |
typedef value_type(* | bulkfun_userdata_type9) (void *, int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with nine arguments. | |
typedef value_type(* | bulkfun_userdata_type10) (void *, int, int, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions with ten arguments. | |
typedef value_type(* | multfun_type) (const value_type *, int) |
Callback type used for functions with a variable argument list. | |
typedef value_type(* | multfun_userdata_type) (void *, const value_type *, int) |
Callback type with user data (not null) used for functions and a variable argument list. | |
typedef value_type(* | strfun_type1) (const char_type *) |
Callback type used for functions taking a string as an argument. | |
typedef value_type(* | strfun_type2) (const char_type *, value_type) |
Callback type used for functions taking a string and a value as arguments. | |
typedef value_type(* | strfun_type3) (const char_type *, value_type, value_type) |
Callback type used for functions taking a string and two values as arguments. | |
typedef value_type(* | strfun_type4) (const char_type *, value_type, value_type, value_type) |
Callback type used for functions taking a string and three values as arguments. | |
typedef value_type(* | strfun_type5) (const char_type *, value_type, value_type, value_type, value_type) |
Callback type used for functions taking a string and four values as arguments. | |
typedef value_type(* | strfun_type6) (const char_type *, value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions taking a string and five values as arguments. | |
typedef value_type(* | strfun_userdata_type1) (void *, const char_type *) |
Callback type with user data (not null) used for functions taking a string as an argument. | |
typedef value_type(* | strfun_userdata_type2) (void *, const char_type *, value_type) |
Callback type with user data (not null) used for functions taking a string and a value as arguments. | |
typedef value_type(* | strfun_userdata_type3) (void *, const char_type *, value_type, value_type) |
Callback type with user data (not null) used for functions taking a string and two values as arguments. | |
typedef value_type(* | strfun_userdata_type4) (void *, const char_type *, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions taking a string and a value as arguments. | |
typedef value_type(* | strfun_userdata_type5) (void *, const char_type *, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions taking a string and two values as arguments. | |
typedef value_type(* | strfun_userdata_type6) (void *, const char_type *, value_type, value_type, value_type, value_type, value_type) |
Callback type with user data (not null) used for functions taking a string and five values as arguments. | |
typedef int(* | identfun_type) (const char_type *sExpr, int *nPos, value_type *fVal) |
Callback used for functions that identify values in a string. | |
typedef value_type *(* | facfun_type) (const char_type *, void *) |
Callback used for variable creation factory functions. | |
Functions | |
std::ostream & | console () |
Encapsulate cout. More... | |
std::istream & | console_in () |
Encapsulate cin. More... | |
Variables | |
static constexpr int | CALLBACK_INTERNAL_VAR_ARGS = 1 << 14 |
static constexpr int | CALLBACK_INTERNAL_FIXED_ARGS_MASK = 0xf |
static constexpr int | CALLBACK_INTERNAL_WITH_USER_DATA = 1 << 13 |
static const int | MaxLenExpression = 20000 |
static const int | MaxLenIdentifier = 100 |
static const string_type | ParserVersion = string_type(_T("2.3.5 (Release)")) |
static const string_type | ParserVersionDate = string_type(_T("20241213")) |
Namespace for mathematical applications.
typedef string_type::value_type mu::char_type |
The character type used by the parser.
Depends on whether UNICODE is used or not.
Definition at line 308 of file muParserDef.h.
typedef MUP_STRING_TYPE mu::string_type |
The stringtype used by the parser.
Depends on whether UNICODE is used or not.
Definition at line 302 of file muParserDef.h.
typedef MUP_BASETYPE mu::value_type |
The numeric datatype used by the parser.
Normally this is a floating point type either single or double precision.
Definition at line 296 of file muParserDef.h.
enum mu::ECmdCode |
Bytecode values.
Definition at line 135 of file muParserDef.h.
enum mu::EErrorCodes |
Error codes.
Definition at line 226 of file muParserDef.h.
enum mu::EOprtPrecedence |
Parser operator precedence values.
Definition at line 208 of file muParserDef.h.
enum mu::ETypeCode |
Types internally used by the parser.
Enumerator | |
---|---|
tpSTR |
String type (Function arguments and constants only, no string variables) |
tpDBL |
Floating point variables. |
tpVOID |
Undefined type. |
Definition at line 183 of file muParserDef.h.
|
inline |
Encapsulate cout.
Used for supporting UNICODE more easily.
Definition at line 115 of file muParserDef.h.
Referenced by mu::ParserByteCode::AsciiDump().
|
inline |
Encapsulate cin.
Used for supporting UNICODE more easily.
Definition at line 124 of file muParserDef.h.