39 char *endptr =
nullptr;
41 const uintmax_t parsed = ::strtoumax(buf, &endptr, 10);
43 const uint64_t val = uint64_t(parsed);
48 ? parsing::errorType::RANGE
49 : parsing::checkConversion(buf, endptr)
52 if (err != parsing::errorType::NONE)
55 << parsing::errorNames[err] <<
" '" << buf <<
"'"
65 char *endptr =
nullptr;
67 const uintmax_t parsed = ::strtoumax(buf, &endptr, 10);
69 val = uint64_t(parsed);
75 : (parsing::checkConversion(buf, endptr) == parsing::errorType::NONE)
96 <<
"Bad token - could not get uint64"
109 const uintmax_t parsed = uintmax_t(std::round(sval));
110 val = 0 + uint64_t(parsed);
115 if ((sval < -1
e-4) || parsed > UINT64_MAX)
118 <<
"Expected label (uint64), value out-of-range "
124 else if (1
e-4 < std::abs(sval - scalar(parsed)))
127 <<
"Expected label (uint64), found non-integral value "
137 <<
"Wrong token type - expected label (uint64), found "
151 os.write(label(val));
Useful combination of include files which define Sin, Sout and Serr and the use of IO streams general...
virtual bool check(const char *operation) const
Check IOstream status for given operation.
void setBad()
Set stream state to be 'bad'.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
A token holds an item read from Istream.
bool isLabel() const noexcept
Token is LABEL.
bool good() const noexcept
True if token is not UNDEFINED or ERROR.
label labelToken() const
Return label value.
InfoProxy< token > info() const
Return info proxy for printing token information to a stream.
bool isScalar() const noexcept
Token is FLOAT or DOUBLE.
scalar scalarToken() const
Return float or double value.
#define FatalIOErrorInFunction(ios)
Report an error message using Foam::FatalIOError.
OBJstream os(runTime.globalPath()/outputName)
errorType
Enumeration for possible parsing error.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
Istream & operator>>(Istream &, directionInfo &)
errorManipArg< error, int > exit(error &err, const int errNo=1)
uint64_t readUint64(Istream &is)
Read uint64_t from stream.