|
| | StreamParser (const char *stream) |
| |
| virtual | ~StreamParser () |
| |
| virtual bool | read (const char *stream) |
| |
| virtual bool | readArguments (istream &IN, int &l_count, string &args) |
| |
| void | replaceCR (string &stream, const char rpl='\n') |
| |
| | ParamsParser (const char *name) |
| |
| virtual | ~ParamsParser () |
| |
| void | setName (const char *name) |
| |
| map< string, string > | get_inputParams () |
| |
| map< string, vector< string > > & | getParsedParameters (const char *stream_name) |
| |
| map< string, vector< string > > & | getParsedParameters () |
| |
| map< string, string > & | getParameters (const char *stream_name) |
| |
| map< string, string > & | getParameters () |
| |
| void | parse () |
| | Builds the _parsedParams from the _inputParams. More...
|
| |
| string | replaceMacro (const string &arg) |
| | Macros. More...
|
| |
| string | parseMacroFunctionBlock (const string &in_arg) |
| |
| string | callMacro (const string &name, const string &argstr) |
| |
| vector< string > | getMacroArgs (const string &args, const int min_arg, const size_t max_arg, const string macro_name, const string syntax, bool lastArgIsSeparatorChar=true) |
| |
| string | getMacroSepParamChar (const string &sep_in, const string macro_name) |
| |
| string | getMacroParamValue (const string &str_in, const string &par_name, const string ¯o_name) |
| |
| string | quote (const string &argstr) |
| | Macro "q" returns a quoted string. More...
|
| |
| string | concat (const string &argstr) |
| | Macro "c" returns a character-delimited string of atomic arguments. More...
|
| |
| string | rep (const string &argstr) |
| |
| string | seq (const string &argstr) |
| |
| string | tempseq (const string &argstr) |
| |
| string | matrix (const string &argstr) |
| |
| string | diag_matrix (const string &argstr) |
| |
| string | sym_matrix (const string &argstr) |
| |
| string | runif (const string &argstr) |
| |
| string | rnorm (const string &argstr) |
| |
| string | rpoiss (const string &argstr) |
| |
| string | rbernoul (const string &argstr) |
| |
| string | rgamma (const string &argstr) |
| |
| string | rlognorm (const string &argstr) |
| |
| string | rexp (const string &argstr) |
| |
|
| static bool | removeComment (istream &IN, int &l_count) |
| | Recusively removes comments until the end of a line/of the file, or of a block comment is reached. More...
|
| |
| static bool | removeSpaceAndComment (istream &IN, int &l_count, bool keepLast=false) |
| | Removes whitespace char on a line until a non-ws or EOL is reached. More...
|
| |
| static string | readUntilCharacter (istream &IN, int &l_count, const char start_c, const char end_c) |
| |
| static void | eatLine (istream &IN, int &l_count) |
| |
| static void | getBlockArgument (istream &IN, char &c, string &arg) |
| |
| static void | getArguments (string &arg_str, vector< string > &arg_vect) |
| |
Read parameters from a text buffer.
| bool StreamParser::removeComment |
( |
istream & |
IN, |
|
|
int & |
l_count |
|
) |
| |
|
static |
Recusively removes comments until the end of a line/of the file, or of a block comment is reached.
#: commented line (removed until the end of the line is reached) #/ ... /#: a block comment (may span several lines) Consecutive lines of comments are also removed, even if not part of a block comment. Note: this function always returns false, unless something remains on a line after a block comment (i.e. if removeSpaceAndComment() returns true)
1559 bool isBlock = (IN.peek() ==
'/');
1560 bool prevIsComment =
true;
1562 while(IN.get(c) && IN.good() && !IN.eof()){
1567 if (IN.peek() ==
'#') {
1570 prevIsComment =
true;
1575 }
else if( isBlock ) {
1586 if(IN.peek() ==
'#') {
1594 }
else if(prevIsComment) {
1600 if(c ==
'#') prevIsComment =
true;
1601 else prevIsComment =
false;
References EOL.