NCBI C++ ToolKit
|
Namespace for mathematical applications. More...
Namespaces | |
Test | |
Namespace for test cases. | |
Classes | |
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 | ParserComplex |
Mathematical expressions parser. More... | |
struct | STATIC_ASSERTION_FAILURE |
Static type checks. More... | |
struct | STATIC_ASSERTION_FAILURE< true > |
class | ParserErrorMsg |
A class that handles the error messages. More... | |
class | ParserError |
Error class of the parser. More... | |
class | ParserInt |
Mathematical expressions parser. More... | |
class | ParserStack |
Parser stack implementation. More... | |
class | ParserToken |
Encapsulation of the data for a single formula token. More... | |
class | ParserTokenReader |
Token reader for the ParserBase class. More... | |
Typedefs | |
typedef std::map< string_type, ParserCallback > | funmap_type |
Container for Callback objects. More... | |
typedef double | value_type |
The numeric datatype used by the parser. More... | |
typedef std::string | string_type |
The stringtype used by the parser. More... | |
typedef long | bytecode_type |
The bytecode type 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. More... | |
typedef std::map< string_type, value_type * > | varmap_type |
Type used for storing variables. More... | |
typedef std::map< string_type, value_type > | valmap_type |
Type used for storing constants. More... | |
typedef std::map< string_type, std::size_t > | strmap_type |
Type for assigning a string name to an index in the internal string table. More... | |
typedef value_type(* | fun_type0) () |
Callback type used for functions without arguments. More... | |
typedef value_type(* | fun_type1) (value_type) |
Callback type used for functions with a single arguments. More... | |
typedef value_type(* | fun_type2) (value_type, value_type) |
Callback type used for functions with two arguments. More... | |
typedef value_type(* | fun_type3) (value_type, value_type, value_type) |
Callback type used for functions with three arguments. More... | |
typedef value_type(* | fun_type4) (value_type, value_type, value_type, value_type) |
Callback type used for functions with four arguments. More... | |
typedef value_type(* | fun_type5) (value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with five arguments. More... | |
typedef value_type(* | multfun_type) (const value_type *, int) |
Callback type used for functions with a variable argument list. More... | |
typedef value_type(* | strfun_type1) (const char_type *) |
Callback type used for functions taking a string as an argument. More... | |
typedef value_type(* | strfun_type2) (const char_type *, value_type) |
Callback type used for functions taking a string and a value as arguments. More... | |
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. More... | |
typedef int(* | identfun_type) (const char_type *sExpr, int *nPos, value_type *fVal) |
Callback used for functions that identify values in a string. More... | |
typedef value_type *(* | facfun_type) (const char_type *, void *) |
Callback used for variable creation factory functions. More... | |
typedef char | MAP_TYPE_CANT_BE_UNSIGNED[sizeof(STATIC_ASSERTION_FAILURE< bytecode_type(-1)< 0 >)] |
This is a static typecheck. More... | |
Functions | |
std::ostream & | console () |
Encapsulate cout. More... | |
std::istream & | console_in () |
Encapsulate cin. More... | |
Namespace for mathematical applications.
typedef long mu::bytecode_type |
The bytecode type used by the parser.
The bytecode type depends on the value_type.
Definition at line 240 of file muParserDef.h.
typedef string_type::value_type mu::char_type |
The character type used by the parser.
Depends on wether UNICODE is used or not.
Definition at line 246 of file muParserDef.h.
typedef value_type*(* mu::facfun_type) (const char_type *, void *) |
Callback used for variable creation factory functions.
Definition at line 300 of file muParserDef.h.
typedef value_type(* mu::fun_type0) () |
Callback type used for functions without arguments.
Definition at line 267 of file muParserDef.h.
typedef value_type(* mu::fun_type1) (value_type) |
Callback type used for functions with a single arguments.
Definition at line 270 of file muParserDef.h.
typedef value_type(* mu::fun_type2) (value_type, value_type) |
Callback type used for functions with two arguments.
Definition at line 273 of file muParserDef.h.
typedef value_type(* mu::fun_type3) (value_type, value_type, value_type) |
Callback type used for functions with three arguments.
Definition at line 276 of file muParserDef.h.
typedef value_type(* mu::fun_type4) (value_type, value_type, value_type, value_type) |
Callback type used for functions with four arguments.
Definition at line 279 of file muParserDef.h.
typedef value_type(* mu::fun_type5) (value_type, value_type, value_type, value_type, value_type) |
Callback type used for functions with five arguments.
Definition at line 282 of file muParserDef.h.
typedef std::map<string_type, ParserCallback> mu::funmap_type |
Container for Callback objects.
Definition at line 93 of file muParserCallback.h.
typedef int(* mu::identfun_type) (const char_type *sExpr, int *nPos, value_type *fVal) |
Callback used for functions that identify values in a string.
Definition at line 297 of file muParserDef.h.
typedef char mu::MAP_TYPE_CANT_BE_UNSIGNED[sizeof(STATIC_ASSERTION_FAILURE< bytecode_type(-1)< 0 >)] |
This is a static typecheck.
If you get a compiler error here you tried to use an unsigned bytecode map type!
Definition at line 317 of file muParserDef.h.
typedef value_type(* mu::multfun_type) (const value_type *, int) |
Callback type used for functions with a variable argument list.
Definition at line 285 of file muParserDef.h.
typedef value_type(* mu::strfun_type1) (const char_type *) |
Callback type used for functions taking a string as an argument.
Definition at line 288 of file muParserDef.h.
typedef value_type(* mu::strfun_type2) (const char_type *, value_type) |
Callback type used for functions taking a string and a value as arguments.
Definition at line 291 of file muParserDef.h.
typedef value_type(* mu::strfun_type3) (const char_type *, value_type, value_type) |
Callback type used for functions taking a string and two values as arguments.
Definition at line 294 of file muParserDef.h.
typedef std::string mu::string_type |
The stringtype used by the parser.
Depends on wether UNICODE is used or not.
Definition at line 234 of file muParserDef.h.
typedef std::basic_stringstream<char_type, std::char_traits<char_type>, std::allocator<char_type> > mu::stringstream_type |
Typedef for easily using stringstream that respect the parser stringtype.
Definition at line 251 of file muParserDef.h.
typedef std::map<string_type, std::size_t> mu::strmap_type |
Type for assigning a string name to an index in the internal string table.
Definition at line 262 of file muParserDef.h.
typedef std::map<string_type, value_type> mu::valmap_type |
Type used for storing constants.
Definition at line 259 of file muParserDef.h.
typedef double 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 228 of file muParserDef.h.
typedef std::map<string_type, value_type*> mu::varmap_type |
Type used for storing variables.
Definition at line 256 of file muParserDef.h.
enum mu::ECmdCode |
Bytecode values.
Definition at line 160 of file muParserDef.h.
enum mu::EErrorCodes |
Error codes.
Definition at line 46 of file muParserError.h.
enum mu::EPrec |
Parser operator precedence values.
Definition at line 207 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 198 of file muParserDef.h.
|
inline |
Encapsulate cout.
Used for supporting UNICODE more easily.
Definition at line 139 of file muParserDef.h.
Referenced by mu::Test::ParserTester::Abort(), mu::Test::ParserTester::EqnTest(), mu::Test::ParserTester::EqnTestInt(), mu::Test::ParserTester::Run(), mu::Test::ParserTester::TestBinOprt(), mu::Test::ParserTester::TestException(), mu::Test::ParserTester::TestExpression(), mu::Test::ParserTester::TestInfixOprt(), mu::Test::ParserTester::TestInterface(), mu::Test::ParserTester::TestMultiArg(), mu::Test::ParserTester::TestNames(), mu::Test::ParserTester::TestPostFix(), mu::Test::ParserTester::TestStrArg(), mu::Test::ParserTester::TestSyntax(), mu::Test::ParserTester::TestVarConst(), mu::Test::ParserTester::TestVolatile(), and mu::Test::ParserTester::ThrowTest().
|
inline |
Encapsulate cin.
Used for supporting UNICODE more easily.
Definition at line 148 of file muParserDef.h.