NumeRe v1.1.4
NumeRe: Framework für Numerische Rechnungen
error.hpp
Go to the documentation of this file.
1/*****************************************************************************
2 NumeRe: Framework fuer Numerische Rechnungen
3 Copyright (C) 2014 Erik Haenel et al.
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17******************************************************************************/
18
19#include <string>
20#include <vector>
21#include "language.hpp"
22#include "../ParserLib/muParserDef.h"
23
24#ifndef ERROR_HPP
25#define ERROR_HPP
26
32{
33 private:
34 std::string sFailingExpression;
35 std::string sErrorToken;
38
39 public:
43 {
232 };
233
235 static size_t invalid_position;
236 static int invalid_index;
237
243 {
244 nErrorIndices[0] = -1;
245 nErrorIndices[1] = -1;
246 nErrorIndices[2] = -1;
247 nErrorIndices[3] = -1;
248 }
249
259 SyntaxError(ErrorCode _err, const std::string& sExpr, size_t n_pos) : SyntaxError()
260 {
261 sFailingExpression = sExpr;
262 nErrorPosition = n_pos;
263 errorcode = _err;
264 }
265
277 SyntaxError(ErrorCode _err, const std::string& sExpr, size_t n_pos, const std::string& sToken) : SyntaxError()
278 {
279 sFailingExpression = sExpr;
280 sErrorToken = sToken;
281 nErrorPosition = n_pos;
282 errorcode = _err;
283 }
284
299 SyntaxError(ErrorCode _err, const std::string& sExpr, size_t n_pos, int nInd1, int nInd2 = invalid_index, int nInd3 = invalid_index, int nInd4 = invalid_index) : sFailingExpression(sExpr), nErrorPosition(n_pos), errorcode(_err)
300 {
301 nErrorIndices[0] = nInd1;
302 nErrorIndices[1] = nInd2;
303 nErrorIndices[2] = nInd3;
304 nErrorIndices[3] = nInd4;
305 }
306
323 SyntaxError(ErrorCode _err, const std::string& sExpr, size_t n_pos, const std::string& sToken, int nInd1, int nInd2 = invalid_index, int nInd3 = invalid_index, int nInd4 = invalid_index) : sFailingExpression(sExpr), sErrorToken(sToken), nErrorPosition(n_pos), errorcode(_err)
324 {
325 nErrorIndices[0] = nInd1;
326 nErrorIndices[1] = nInd2;
327 nErrorIndices[2] = nInd3;
328 nErrorIndices[3] = nInd4;
329 }
330
342 SyntaxError(ErrorCode _err, const std::string& sExpr, const std::string& sErrTok) : SyntaxError()
343 {
344 sFailingExpression = sExpr;
345 errorcode = _err;
346 nErrorPosition = sFailingExpression.find(sErrTok);
347 }
348
362 SyntaxError(ErrorCode _err, const std::string& sExpr, const std::string& sErrTok, const std::string& sToken) : SyntaxError()
363 {
364 sFailingExpression = sExpr;
365 sErrorToken = sToken;
366 errorcode = _err;
367 nErrorPosition = sFailingExpression.find(sErrTok);
368 }
369
386 SyntaxError(ErrorCode _err, const std::string& sExpr, const std::string& sErrTok, int nInd1, int nInd2 = invalid_index, int nInd3 = invalid_index, int nInd4 = invalid_index) : sFailingExpression(sExpr), errorcode(_err)
387 {
388 nErrorPosition = sFailingExpression.find(sErrTok);
389 nErrorIndices[0] = nInd1;
390 nErrorIndices[1] = nInd2;
391 nErrorIndices[2] = nInd3;
392 nErrorIndices[3] = nInd4;
393 }
394
413 SyntaxError(ErrorCode _err, const std::string& sExpr, const std::string& sErrTok, const std::string& sToken, int nInd1, int nInd2 = invalid_index, int nInd3 = invalid_index, int nInd4 = invalid_index) : sFailingExpression(sExpr), sErrorToken(sToken), errorcode(_err)
414 {
415 nErrorPosition = sFailingExpression.find(sErrTok);
416 nErrorIndices[0] = nInd1;
417 nErrorIndices[1] = nInd2;
418 nErrorIndices[2] = nInd3;
419 nErrorIndices[3] = nInd4;
420 }
421
428 std::string getExpr() const
429 {return sFailingExpression;}
430
438 std::string getToken() const
439 {return sErrorToken;}
440
448 size_t getPosition() const
449 {return nErrorPosition;}
450
458 const int* getIndices() const
459 {return nErrorIndices;}
460
461};
462
463
469{
480
481
482ErrorType getErrorType(std::exception_ptr e_ptr);
483std::string getLastErrorMessage();
485std::string errorTypeToString(ErrorType e);
486
487
488// Forward declaration for the Assertion class
489struct StringResult;
490
496{
499
501
508 void reset()
509 {
512 }
513
521 {
523 }
524
531 void failed()
532 {
535 }
536};
537
538class Matrix;
539
548{
549 private:
552 void assertionFail();
554
555 public:
557 void reset();
558 void resetStats();
559 void enable(const std::string& sExpr);
560 void checkAssertion(mu::value_type* v, int nNum);
561 void checkAssertion(const Matrix& _mMatrix);
562 void checkAssertion(const StringResult& strRes);
563 AssertionStats getStats() const;
564};
565
566
567extern Language _lang;
569
570#endif // ERROR_HPP
571
This class handles assertions and throws the corresponding exception, if the assertion fails....
Definition: error.hpp:548
void enable(const std::string &sExpr)
Enables the assertion handler using the passed expression.
Definition: error.cpp:228
void reset()
Resets the assertion handler.
Definition: error.cpp:196
AssertionStats getStats() const
Returns the current tests stats.
Definition: error.cpp:328
void assertionFail()
This member function is a wrapper around the assertion error.
Definition: error.cpp:183
AssertionStats stats
Definition: error.hpp:553
bool assertionMode
Definition: error.hpp:551
void resetStats()
Resets the internal statistic variables for accumulating the total number of executed and the number ...
Definition: error.cpp:214
std::string sAssertedExpression
Definition: error.hpp:550
Assertion()
Definition: error.hpp:556
void checkAssertion(mu::value_type *v, int nNum)
Checks the return value of a muParser evaluated result.
Definition: error.cpp:244
This class handles the internal language system and returns the language strings of the selected lang...
Definition: language.hpp:38
This class defines a dynamic size 2D matrix with a single 1D internal buffer. If the internal buffer ...
Common exception class for all exceptions thrown in NumeRe.
Definition: error.hpp:32
SyntaxError(ErrorCode _err, const std::string &sExpr, size_t n_pos, const std::string &sToken)
Creates an exception based from an expression and position and provides the possibility to define an ...
Definition: error.hpp:277
SyntaxError()
Default constructor to create an invalid exception.
Definition: error.hpp:242
SyntaxError(ErrorCode _err, const std::string &sExpr, const std::string &sErrTok)
Creates an exception based from an expression and an error token, which is used to locate the positio...
Definition: error.hpp:342
SyntaxError(ErrorCode _err, const std::string &sExpr, size_t n_pos, int nInd1, int nInd2=invalid_index, int nInd3=invalid_index, int nInd4=invalid_index)
Creates an exception based from an expression and position and provides the possibility to set additi...
Definition: error.hpp:299
std::string getToken() const
Returns the error token containing additional information about the error.
Definition: error.hpp:438
ErrorCode errorcode
Definition: error.hpp:234
std::string sFailingExpression
Definition: error.hpp:34
@ NO_PARAMS_FOR_FIT
Definition: error.hpp:178
@ EMPTY_ERROR_MESSAGE
Definition: error.hpp:44
@ CACHE_ALREADY_EXISTS
Definition: error.hpp:45
@ CANNOT_RETOQUE_CACHE
Definition: error.hpp:80
@ INVALID_INTERVAL
Definition: error.hpp:132
@ FUNCTION_IS_PREDEFINED
Definition: error.hpp:111
@ INVALID_CACHE_NAME
Definition: error.hpp:124
@ CANNOT_EVAL_SWITCH
Definition: error.hpp:86
@ DATAPOINTS_CANNOT_BE_MODIFIED_WHILE_PLOTTING
Definition: error.hpp:95
@ LOOP_THROW
Definition: error.hpp:152
@ NO_NUMBER_AT_POS_1
Definition: error.hpp:176
@ CANNOT_EVAL_IF
Definition: error.hpp:59
@ INVALID_ELEMENT
Definition: error.hpp:126
@ MATRIX_IS_NOT_INVERTIBLE
Definition: error.hpp:153
@ EXECUTE_COMMAND_UNSUCCESSFUL
Definition: error.hpp:102
@ FUNCTION_ALREADY_EXISTS
Definition: error.hpp:107
@ PLUGIN_MAY_NOT_OVERRIDE
Definition: error.hpp:194
@ NO_DIFF_OPTIONS
Definition: error.hpp:162
@ INVALID_INTEGRATION_RANGES
Definition: error.hpp:131
@ DIFF_VAR_NOT_FOUND
Definition: error.hpp:96
@ NO_INTERVAL_FOR_ODE
Definition: error.hpp:173
@ CANNOT_SAVE_CACHE
Definition: error.hpp:81
@ CANNOT_GENERATE_SCRIPT
Definition: error.hpp:67
@ CANNOT_SMOOTH_CACHE
Definition: error.hpp:83
@ INVALID_WINDOW_ID
Definition: error.hpp:140
@ NO_DATA_AVAILABLE
Definition: error.hpp:160
@ INVALID_REGEX
Definition: error.hpp:139
@ CANNOT_DELETE_ELEMENTS
Definition: error.hpp:56
@ INVALID_FILETYPE
Definition: error.hpp:127
@ CANNOT_GENERATE_FILE
Definition: error.hpp:65
@ TOO_MANY_FUNCTION_CALLS
Definition: error.hpp:220
@ TABLE_DOESNT_EXIST
INSERT HERE.
Definition: error.hpp:211
@ CANNOT_OPEN_LOGFILE
Definition: error.hpp:71
@ INVALID_CLUSTER_NAME
Definition: error.hpp:137
@ ELLIPSIS_MUST_BE_LAST_ARG
Definition: error.hpp:97
@ CANNOT_BE_A_FITTING_PARAM
INSERT HERE.
Definition: error.hpp:51
@ TOO_MANY_ARGS_FOR_DEFINE
Definition: error.hpp:219
@ CANNOT_ASSIGN_COLUMN_OF_DIFFERENT_TYPE
Definition: error.hpp:88
@ STRINGVARS_MUSTNT_CONTAIN
Definition: error.hpp:208
@ NO_EXTREMA_VAR
Definition: error.hpp:168
@ EVAL_VAR_NOT_FOUND
Definition: error.hpp:98
@ WRONG_DATA_SIZE
Definition: error.hpp:229
@ CANNOT_PLOT_STRINGS
Definition: error.hpp:74
@ STRINGVARS_MUSTNT_BEGIN_WITH_A_NUMBER
Definition: error.hpp:207
@ INVALID_WAVELET_COEFFICIENT
Definition: error.hpp:136
@ INVALID_DATA_ACCESS
Definition: error.hpp:125
@ CANNOT_COPY_FILE
Definition: error.hpp:55
@ FUNCTION_NAMES_MUST_NOT_CONTAIN_SIGN
Definition: error.hpp:112
@ CLUSTER_DOESNT_EXIST
Definition: error.hpp:48
@ INTERNAL_RESAMPLER_ERROR
Definition: error.hpp:123
@ ASSERTION_ERROR
Definition: error.hpp:49
@ INLINE_PROCEDURE_IS_NOT_INLINE
Definition: error.hpp:119
@ CANNOT_EVAL_FOR
Definition: error.hpp:58
@ PROCEDURE_STACK_OVERFLOW
Definition: error.hpp:201
@ NO_EVAL_VAR
Definition: error.hpp:165
@ IF_OR_LOOP_SEEMS_NOT_TO_BE_CLOSED
Definition: error.hpp:117
@ INVALID_STATS_WINDOW_SIZE
Definition: error.hpp:144
@ CANNOT_EDIT_FILE_TYPE
Definition: error.hpp:57
@ INVALID_SYM_NAME
Definition: error.hpp:142
@ INVALID_COMMAND
Definition: error.hpp:145
@ EXTERNAL_PROGRAM_NOT_FOUND
Definition: error.hpp:99
@ PLUGINNAME_ALREADY_EXISTS
Definition: error.hpp:191
@ FUNCTION_STRING_IS_COMMAND
Definition: error.hpp:113
@ NO_INTEGRATION_RANGES
Definition: error.hpp:172
@ CACHE_DOESNT_EXIST
Definition: error.hpp:47
@ NO_ZEROES_OPTIONS
Definition: error.hpp:182
@ SEPARATOR_NOT_FOUND
Definition: error.hpp:205
@ FUNCTION_CANNOT_BE_FITTED
Definition: error.hpp:109
@ CANNOT_FIND_DEFINE_OPRT
Definition: error.hpp:62
@ NO_ZEROES_VAR
Definition: error.hpp:183
@ NO_CACHED_DATA
Definition: error.hpp:158
@ INVALID_SUBPLOT_INDEX
Definition: error.hpp:134
@ NO_MATRIX_FOR_MATOP
Definition: error.hpp:175
@ INVALID_HLPIDX
Definition: error.hpp:128
@ CUTOFF_MODE_INVALID
Definition: error.hpp:92
@ MISSING_DEFAULT_VALUE
Definition: error.hpp:157
@ CANNOT_READ_FILE
Definition: error.hpp:75
@ CANNOT_SAVE_FILE
Definition: error.hpp:82
@ PROCEDURE_WITHOUT_INSTALL_FOUND
Definition: error.hpp:200
@ INVALID_WAVELET_TYPE
Definition: error.hpp:135
@ CANNOT_SORT_CACHE
Definition: error.hpp:84
@ NO_INTEGRATION_FUNCTION
Definition: error.hpp:171
@ INVALID_WINDOW_ITEM_ID
Definition: error.hpp:141
@ TOO_LARGE_BINWIDTH
Definition: error.hpp:216
@ INVALID_PROCEDURE_NAME
Definition: error.hpp:133
@ TOO_MANY_VECTORS
Definition: error.hpp:221
@ LGS_HAS_NO_UNIQUE_SOLUTION
Definition: error.hpp:151
@ CANNOT_EVAL_TRY
Definition: error.hpp:89
@ PLUGINCMD_ALREADY_EXISTS
Definition: error.hpp:190
@ FILE_NOT_EXIST
Definition: error.hpp:105
@ NUMBER_OF_FUNCTIONS_NOT_MATCHING
INSERT HERE.
Definition: error.hpp:186
@ INVALID_MODE
Definition: error.hpp:147
@ MATRIX_CONTAINS_INVALID_VALUES
Definition: error.hpp:156
@ MATRIX_CANNOT_HAVE_ZERO_SIZE
Definition: error.hpp:155
@ CANNOT_OPEN_TARGET
Definition: error.hpp:73
@ NO_DIFF_VAR
Definition: error.hpp:163
@ TOO_FEW_DATAPOINTS
Definition: error.hpp:214
@ FUNCTION_ERROR
Definition: error.hpp:110
@ INVALID_SETTING
Definition: error.hpp:138
@ FUNCTION_ARGS_MUST_NOT_CONTAIN_SIGN
Definition: error.hpp:108
@ EXTREMA_VAR_NOT_FOUND
Definition: error.hpp:100
@ PRIVATE_PROCEDURE_CALLED
INSERT HERE.
Definition: error.hpp:196
@ NO_DEFAULTVALUE_FOR_DIALOG
Definition: error.hpp:184
@ UNMATCHED_PARENTHESIS
Definition: error.hpp:224
@ NO_EVAL_OPTIONS
Definition: error.hpp:164
@ TOO_FEW_COLS
Definition: error.hpp:213
@ EXECUTE_COMMAND_DISABLED
Definition: error.hpp:101
@ SCRIPT_NOT_EXIST
Definition: error.hpp:204
@ CANNOT_EXPORT_DATA
Definition: error.hpp:61
@ NO_OPTIONS_FOR_ODE
Definition: error.hpp:177
@ CANNOT_EVAL_WHILE
Definition: error.hpp:60
@ CANNOT_COPY_DATA
Definition: error.hpp:54
@ CANNOT_OPEN_SOURCE
Definition: error.hpp:72
@ CANNOT_REGULARIZE_CACHE
Definition: error.hpp:76
@ WRONG_MATRIX_DIMENSIONS_FOR_MATOP
Definition: error.hpp:227
@ INVALID_INTEGRATION_PRECISION
Definition: error.hpp:130
@ CANNOT_MOVE_DATA
Definition: error.hpp:68
@ INCLUDE_NOT_EXIST
Definition: error.hpp:146
@ TOO_FEW_LINES
Definition: error.hpp:215
@ CANNOT_GENERATE_PROCEDURE
Definition: error.hpp:66
@ INCOMPLETE_VECTOR_SYNTAX
Definition: error.hpp:118
@ WRONG_ARG_NAME
Definition: error.hpp:226
@ HLPIDX_ENTRY_IS_MISSING
INSERT HERE.
Definition: error.hpp:115
@ LGS_HAS_NO_SOLUTION
INSERT HERE.
Definition: error.hpp:150
@ NO_EXPRESSION_FOR_ODE
Definition: error.hpp:166
@ CANNOT_MOVE_FILE
Definition: error.hpp:69
@ ZEROES_VAR_NOT_FOUND
INSERT HERE.
Definition: error.hpp:231
@ HLP_FILE_MISSING
Definition: error.hpp:116
@ COL_COUNTS_DOESNT_MATCH
INSERT HERE.
Definition: error.hpp:91
@ CANNOT_OPEN_FITLOG
Definition: error.hpp:70
@ TOO_LARGE_CACHE
Definition: error.hpp:217
@ CACHE_CANNOT_BE_RENAMED
Definition: error.hpp:46
@ CANNOT_RESAMPLE_CACHE
Definition: error.hpp:79
@ INLINE_PROCEDURE_NEEDS_TABLE_REFERENCES
Definition: error.hpp:120
@ STRINGS_MAY_NOT_BE_EVALUATED_WITH_CMD
Definition: error.hpp:206
@ OVERFITTING_ERROR
Definition: error.hpp:187
@ DATAFILE_NOT_EXIST
INSERT HERE.
Definition: error.hpp:94
@ FITFUNC_NOT_CONTAINS
Definition: error.hpp:106
@ INVALID_FLOWCTRL_STATEMENT
Definition: error.hpp:143
@ PROCEDURE_THROW
Definition: error.hpp:199
@ PLOTDATA_IS_NAN
Definition: error.hpp:188
@ CANNOT_RELOAD_DATA
Definition: error.hpp:77
@ NO_FUNCTION_FOR_FIT
Definition: error.hpp:170
@ INSTALL_CMD_FOUND
Definition: error.hpp:121
@ CANNOT_REMOVE_FILE
Definition: error.hpp:78
@ INSUFFICIENT_NUMERE_VERSION
Definition: error.hpp:122
@ INVALID_INDEX
Definition: error.hpp:129
@ NO_STRING_FOR_WRITING
Definition: error.hpp:180
@ STRING_ERROR
Definition: error.hpp:209
@ PLUGIN_HAS_NO_MAIN
Definition: error.hpp:193
@ NO_DATA_FOR_FIT
Definition: error.hpp:161
@ PROCEDURE_NOT_FOUND
Definition: error.hpp:198
@ PROCEDURE_ERROR
Definition: error.hpp:197
@ PLOT_ERROR
Definition: error.hpp:189
@ FILE_IS_EMPTY
Definition: error.hpp:104
@ MATRIX_IS_NOT_SYMMETRIC
Definition: error.hpp:154
@ CANNOT_CONTAIN_STRINGS
Definition: error.hpp:53
@ PLUGIN_HAS_NO_CMD
Definition: error.hpp:192
@ WRONG_PLOT_INTERVAL_FOR_LOGSCALE
Definition: error.hpp:228
@ CANNOT_CALL_SCRIPT_RECURSIVELY
Definition: error.hpp:52
@ NO_EXTREMA_OPTIONS
Definition: error.hpp:167
@ READ_ONLY_DATA
Definition: error.hpp:203
@ NO_FILENAME
Definition: error.hpp:169
@ CANNOT_SORT_DATA
Definition: error.hpp:85
@ FILETYPE_MAY_NOT_BE_WRITTEN
Definition: error.hpp:103
@ CANNOT_PASS_LITERAL_PER_REFERENCE
Definition: error.hpp:87
@ CANNOT_FIND_FUNCTION_ARGS
Definition: error.hpp:63
@ CANNOT_GENERATE_DIRECTORY
Definition: error.hpp:64
@ PROCESS_ABORTED_BY_USER
Definition: error.hpp:202
@ TOO_FEW_ARGS
Definition: error.hpp:212
@ INVALID_FILTER_SIZE
Definition: error.hpp:148
@ TOO_MANY_ARGS
Definition: error.hpp:218
@ UNKNOWN_PATH_TOKEN
INSERT HERE.
Definition: error.hpp:223
size_t getPosition() const
Returns the position of the error in the erroneous expression.
Definition: error.hpp:448
SyntaxError(ErrorCode _err, const std::string &sExpr, size_t n_pos, const std::string &sToken, int nInd1, int nInd2=invalid_index, int nInd3=invalid_index, int nInd4=invalid_index)
Creates an exception based from an expression and position and provides the possibility to set an add...
Definition: error.hpp:323
const int * getIndices() const
Returns a pointer to the internal array of 4 error indices.
Definition: error.hpp:458
SyntaxError(ErrorCode _err, const std::string &sExpr, const std::string &sErrTok, int nInd1, int nInd2=invalid_index, int nInd3=invalid_index, int nInd4=invalid_index)
Creates an exception based from an expression and an error token, which is used to locate the positio...
Definition: error.hpp:386
int nErrorIndices[4]
Definition: error.hpp:37
static int invalid_index
Definition: error.hpp:236
static size_t invalid_position
Definition: error.hpp:235
std::string getExpr() const
Returns the erroneous expression.
Definition: error.hpp:428
SyntaxError(ErrorCode _err, const std::string &sExpr, const std::string &sErrTok, const std::string &sToken, int nInd1, int nInd2=invalid_index, int nInd3=invalid_index, int nInd4=invalid_index)
Creates an exception based from an expression and an error token, which is used to locate the positio...
Definition: error.hpp:413
SyntaxError(ErrorCode _err, const std::string &sExpr, const std::string &sErrTok, const std::string &sToken)
Creates an exception based from an expression and an error token, which is used to locate the positio...
Definition: error.hpp:362
size_t nErrorPosition
Definition: error.hpp:36
SyntaxError(ErrorCode _err, const std::string &sExpr, size_t n_pos)
Creates an exception based from an expression and position.
Definition: error.hpp:259
std::string sErrorToken
Definition: error.hpp:35
ErrorType getErrorType(std::exception_ptr e_ptr)
This function obtains the error type of a catched exception and sets the last error message.
Definition: error.cpp:42
std::string errorTypeToString(ErrorType e)
Return the error type converted to a human readable string.
Definition: error.cpp:148
Language _lang
Definition: kernel.cpp:39
ErrorType
Defines the possible error types, which can be thrown in this application.
Definition: error.hpp:469
@ TYPE_GENERICERROR
Definition: error.hpp:478
@ TYPE_INTERNALERROR
Definition: error.hpp:476
@ TYPE_NOERROR
Definition: error.hpp:470
@ TYPE_ASSERTIONERROR
Definition: error.hpp:474
@ TYPE_SYNTAXERROR
Definition: error.hpp:473
@ TYPE_MATHERROR
Definition: error.hpp:472
@ TYPE_CRITICALERROR
Definition: error.hpp:477
@ TYPE_CUSTOMERROR
Definition: error.hpp:475
@ TYPE_ABORT
Definition: error.hpp:471
Assertion _assertionHandler
Definition: error.cpp:27
std::string getLastErrorMessage()
Return the last error message, which was catched by the getErrorType() function.
Definition: error.cpp:121
ErrorType getLastErrorType()
Return the last error type, which was catched by the getErrorType() function.
Definition: error.cpp:134
MUP_BASETYPE value_type
The numeric datatype used by the parser.
Definition: muParserDef.h:251
This structure accumulates the statistics for the assertion handler.
Definition: error.hpp:496
size_t nFailedAssertions
Definition: error.hpp:498
void failed()
Assertion failed.
Definition: error.hpp:531
void succeeded()
Assertion was successful.
Definition: error.hpp:520
void reset()
Reset the statistics.
Definition: error.hpp:508
size_t nCheckedAssertions
Definition: error.hpp:497
This structure contains all possible return values of the central string parser in single combined st...