53 primitiveEntryIstream,
63bool Foam::functionEntries::messageDirective::evaluate
74 if (tok.isStringType())
79 str = tok.stringToken();
90 "Premature end while reading #message - missing '}'?"
97 <<
"Invalid input for #message."
98 " Expecting a string or block to expand, but found" <<
nl
110 << str <<
" (file: \""
111 << parentDict.relativeName() <<
"\" line: "
112 << tok.lineNumber() <<
")\n" << std::flush;
127 evaluate(parentDict, is);
140 evaluate(parentDict, is);
Macros for easy insertion into member function selection tables.
#define addNamedToMemberFunctionSelectionTable(baseType, thisType, funcName, argNames, lookupName)
Add to hash-table of functions with 'lookupName' as the key.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
A keyword and a list of tokens is an 'entry'.
entry(const keyType &keyword)
Construct from keyword.
static void reportReadWarning(const IOstream &, const std::string &)
Report a read warning (on std::cerr).
static bool master(const int communicator=-1)
Like Pstream::master but with a Pstream::parRun guard in case Pstream has not yet been initialised.
Expands string content and reports as a message on stderr.
static bool execute(const dictionary &parentDict, primitiveEntry &entry, Istream &is)
Execute in a primitiveEntry context.
A functionEntry causes entries to be added/manipulated on the specified dictionary given an input str...
static bool continueReadUntilRightBrace(Istream &is, std::string &str, const bool stripComments=true)
Slurp a string until a closing '}' is found.
A keyword and a list of tokens comprise a primitiveEntry. A primitiveEntry can be read,...
primitiveEntry(const keyType &key)
Construct from keyword and no tokens.
@ BEGIN_BLOCK
Begin block [isseparator].
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
Namespace for containing a functionEntry.
void inplaceExpand(std::string &s, const HashTable< string > &mapping, const char sigil='$')
Inplace expand occurrences of variables according to the mapping. Does not use environment values.
void inplaceTrim(std::string &s)
Trim leading and trailing whitespace inplace.
Ostream & endl(Ostream &os)
Add newline and flush stream.
IOerror FatalIOError
Error stream (stdout output on all processes), with additional 'FOAM FATAL IO ERROR' header text and ...
errorManipArg< error, int > exit(error &err, const int errNo=1)
constexpr char nl
The newline '\n' character (0x0a).