A token holds items read from Istream. More...
#include <OpenFOAM/token.H>
A token holds items read from Istream.
Definition at line 68 of file token.H.
Collaboration diagram for token:Classes | |
| class | Compound |
| A templated class for holding compound tokens. More...
| |
| class | compound |
| Abstract base class for complex tokens. More...
| |
Public Types | |
| enum | tokenType { UNDEFINED, PUNCTUATION, WORD, STRING, LABEL, FLOAT_SCALAR, DOUBLE_SCALAR, COMPOUND, ERROR } |
Enumeration defining the types of token. More... | |
| enum | punctuationToken { NULL_TOKEN = '\0', SPACE = ' ', TAB = '\t', NL = '\n', END_STATEMENT = ';', BEGIN_LIST = '(', END_LIST = ')', BEGIN_SQR = '[', END_SQR = ']', BEGIN_BLOCK = '{', END_BLOCK = '}', COLON = ':', COMMA = ',', BEGIN_STRING = '"', END_STRING = BEGIN_STRING, ASSIGN = '=', ADD = '+', SUBTRACT = '-', MULTIPLY = '*', DIVIDE = '/' } |
Standard punctuation tokens. More... | |
Public Member Functions | |
| token () | |
| Construct null.
| |
| token (const token &) | |
| Construct as copy.
| |
| token (punctuationToken, label lineNumber=0) | |
| Construct punctuation character token.
| |
| token (const word &, label lineNumber=0) | |
| Construct word token.
| |
| token (const string &, label lineNumber=0) | |
| Construct string token.
| |
| token (const label, label lineNumber=0) | |
| Construct label token.
| |
| token (const floatScalar, label lineNumber=0) | |
| Construct floatScalar token.
| |
| token (const doubleScalar, label lineNumber=0) | |
| Construct doubleScalar token.
| |
| token (Istream &) | |
| Construct from Istream.
| |
| ~token () | |
| tokenType | type () const |
| bool | good () const |
| bool | undefined () const |
| bool | error () const |
| bool | isPunctuation () const |
| punctuationToken | pToken () const |
| bool | isWord () const |
| const word & | wordToken () const |
| bool | isString () const |
| const string & | stringToken () const |
| bool | isLabel () const |
| label | labelToken () const |
| bool | isFloatScalar () const |
| floatScalar | floatScalarToken () const |
| bool | isDoubleScalar () const |
| doubleScalar | doubleScalarToken () const |
| bool | isScalar () const |
| scalar | scalarToken () const |
| bool | isNumber () const |
| scalar | number () const |
| bool | isCompound () const |
| const compound & | compoundToken () const |
| compound & | transferCompoundToken () |
| label | lineNumber () const |
| label & | lineNumber () |
| void | setBad () |
| Set bad.
| |
| InfoProxy< token > | info () const |
| Return info proxy.
| |
| void | operator= (const token &) |
| void | operator= (const punctuationToken) |
| void | operator= (word *) |
| void | operator= (const word &) |
| void | operator= (string *) |
| void | operator= (const string &) |
| void | operator= (const label) |
| void | operator= (const floatScalar) |
| void | operator= (const doubleScalar) |
| void | operator= (compound *) |
| bool | operator== (const token &) const |
| bool | operator== (const punctuationToken) const |
| bool | operator== (const word &) const |
| bool | operator== (const string &) const |
| bool | operator== (const label) const |
| bool | operator== (const floatScalar) const |
| bool | operator== (const doubleScalar) const |
| bool | operator!= (const token &) const |
| bool | operator!= (const punctuationToken) const |
| bool | operator!= (const word &) const |
| bool | operator!= (const string &) const |
| bool | operator!= (const label) const |
| bool | operator!= (const floatScalar) const |
| bool | operator!= (const doubleScalar) const |
Static Public Attributes | |
| static token | undefinedToken |
| Static undefined token.
| |
| static const char *const | typeName = "token" |
Friends | |
| Istream & | operator>> (Istream &, token &) |
| Ostream & | operator<< (Ostream &, const token &) |
| Ostream & | operator<< (Ostream &, const punctuationToken &) |
| ostream & | operator<< (ostream &, const punctuationToken &) |
| ostream & | operator<< (ostream &, const InfoProxy< token > &) |
| enum tokenType |
| enum punctuationToken |
Construct as copy.
Definition at line 72 of file tokenI.H.
References token::COMPOUND, token::compoundTokenPtr_, token::DOUBLE_SCALAR, token::doubleScalarToken_, token::ERROR, token::FLOAT_SCALAR, token::floatScalarToken_, token::LABEL, token::labelToken_, token::PUNCTUATION, token::punctuationToken_, token::STRING, token::stringTokenPtr_, token::UNDEFINED, token::WORD, and token::wordTokenPtr_.
| token | ( | punctuationToken | p, |
| label | lineNumber = 0
|
||
| ) | [inline]
|
| token | ( | const label | l, |
| label | lineNumber = 0
|
||
| ) | [inline]
|
| token | ( | const floatScalar | s, |
| label | lineNumber = 0
|
||
| ) | [inline]
|
| token | ( | const doubleScalar | s, |
| label | lineNumber = 0
|
||
| ) | [inline]
|
| token::tokenType type | ( | ) | const [inline]
|
Definition at line 176 of file tokenI.H.
Referenced by Foam::operator<<().
| bool good | ( | ) | const [inline]
|
Definition at line 181 of file tokenI.H.
References token::ERROR, and token::UNDEFINED.
Referenced by Foam::operator>>(), and primitiveEntry::read().
| bool undefined | ( | ) | const [inline]
|
Definition at line 186 of file tokenI.H.
References token::UNDEFINED.
| bool error | ( | ) | const [inline]
|
Definition at line 191 of file tokenI.H.
References token::ERROR.
| bool isPunctuation | ( | ) | const [inline]
|
Definition at line 196 of file tokenI.H.
References token::PUNCTUATION.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), Foam::operator>>(), PtrList< T >::read(), IOPosition< ParticleType >::readData(), Foam::readList(), and thirdBodyEfficiencies::thirdBodyEfficiencies().
| token::punctuationToken pToken | ( | ) | const [inline]
|
Definition at line 201 of file tokenI.H.
References token::NULL_TOKEN, token::PUNCTUATION, and token::punctuationToken_.
Referenced by Foam::operator<<(), Foam::operator>>(), PtrList< T >::read(), Istream::readBeginList(), IOPosition< ParticleType >::readData(), Istream::readEndList(), Foam::readList(), and thirdBodyEfficiencies::thirdBodyEfficiencies().
| bool isWord | ( | ) | const [inline]
|
Definition at line 214 of file tokenI.H.
References token::WORD.
Referenced by Field< Type >::Field(), genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), Foam::operator>>(), IOobject::readHeader(), Reaction< ReactionThermo >::specieCoeffs::specieCoeffs(), and thirdBodyEfficiencies::thirdBodyEfficiencies().
| const word & wordToken | ( | ) | const [inline]
|
Definition at line 219 of file tokenI.H.
References word::null, token::WORD, and token::wordTokenPtr_.
Referenced by Field< Type >::Field(), genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), Foam::operator<<(), token::operator==(), Foam::operator>>(), IOobject::readHeader(), Reaction< ReactionThermo >::specieCoeffs::specieCoeffs(), and thirdBodyEfficiencies::thirdBodyEfficiencies().
| bool isString | ( | ) | const [inline]
|
Definition at line 232 of file tokenI.H.
References token::STRING.
Referenced by Foam::operator>>().
| const string & stringToken | ( | ) | const [inline]
|
Definition at line 237 of file tokenI.H.
References string::null, token::STRING, and token::stringTokenPtr_.
Referenced by Foam::operator<<(), token::operator==(), and Foam::operator>>().
| bool isLabel | ( | ) | const [inline]
|
Definition at line 250 of file tokenI.H.
References token::LABEL.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), Foam::operator>>(), PtrList< T >::read(), and IOPosition< ParticleType >::readData().
| label labelToken | ( | ) | const [inline]
|
Definition at line 255 of file tokenI.H.
References token::LABEL, and token::labelToken_.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), Foam::operator<<(), Foam::operator>>(), ISstream::read(), PtrList< T >::read(), and IOPosition< ParticleType >::readData().
| bool isFloatScalar | ( | ) | const [inline]
|
Definition at line 268 of file tokenI.H.
References token::FLOAT_SCALAR.
| floatScalar floatScalarToken | ( | ) | const [inline]
|
Definition at line 273 of file tokenI.H.
References token::FLOAT_SCALAR, and token::floatScalarToken_.
Referenced by Foam::operator<<().
| bool isDoubleScalar | ( | ) | const [inline]
|
Definition at line 287 of file tokenI.H.
References token::DOUBLE_SCALAR.
| doubleScalar doubleScalarToken | ( | ) | const [inline]
|
Definition at line 292 of file tokenI.H.
References token::DOUBLE_SCALAR, and token::doubleScalarToken_.
Referenced by Foam::operator<<().
| bool isScalar | ( | ) | const [inline]
|
Definition at line 306 of file tokenI.H.
References token::DOUBLE_SCALAR, and token::FLOAT_SCALAR.
Referenced by token::isNumber(), and token::number().
| scalar scalarToken | ( | ) | const [inline]
|
Definition at line 311 of file tokenI.H.
References token::DOUBLE_SCALAR, token::doubleScalarToken_, token::FLOAT_SCALAR, and token::floatScalarToken_.
Referenced by token::number().
| bool isNumber | ( | ) | const [inline]
|
Definition at line 328 of file tokenI.H.
References token::isScalar(), and token::LABEL.
Referenced by Time::findTimes(), Foam::operator>>(), and Reaction< ReactionThermo >::specieCoeffs::specieCoeffs().
| scalar number | ( | ) | const [inline]
|
Definition at line 333 of file tokenI.H.
References token::isScalar(), token::LABEL, token::labelToken_, and token::scalarToken().
Referenced by Time::findTimes(), genericFvPatchField< Type >::genericFvPatchField(), Foam::operator>>(), and Reaction< ReactionThermo >::specieCoeffs::specieCoeffs().
| bool isCompound | ( | ) | const [inline]
|
Definition at line 350 of file tokenI.H.
References token::COMPOUND.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), and Foam::operator>>().
| const token::compound & compoundToken | ( | ) | const [inline]
|
Definition at line 355 of file tokenI.H.
References token::COMPOUND, and token::compoundTokenPtr_.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), and Foam::operator<<().
| Foam::token::compound & transferCompoundToken | ( | ) |
Definition at line 89 of file token.C.
References Foam::abort(), Foam::FatalError, and FatalErrorIn.
Referenced by genericFvPatchField< Type >::genericFvPatchField(), genericPointPatchField< Type >::genericPointPatchField(), and Foam::operator>>().
| label lineNumber | ( | ) | const [inline]
|
Definition at line 369 of file tokenI.H.
Referenced by Foam::operator<<(), ITstream::read(), ISstream::read(), and IPstream::read().
| void setBad | ( | ) | [inline]
|
Set bad.
Definition at line 380 of file tokenI.H.
References token::ERROR.
Referenced by ISstream::read(), and IPstream::read().
Return info proxy.
Used to print token information to a stream
Definition at line 369 of file token.H.
Referenced by Field< Type >::Field(), Foam::operator>>(), PtrList< T >::read(), Istream::readBegin(), Istream::readBeginList(), IOPosition< ParticleType >::readData(), Istream::readEnd(), Istream::readEndList(), Foam::readList(), Reaction< ReactionThermo >::specieCoeffs::specieCoeffs(), and thirdBodyEfficiencies::thirdBodyEfficiencies().
| void operator= | ( | const token & | t ) | [inline]
|
Definition at line 389 of file tokenI.H.
References token::COMPOUND, token::compoundTokenPtr_, token::DOUBLE_SCALAR, token::doubleScalarToken_, token::ERROR, token::FLOAT_SCALAR, token::floatScalarToken_, token::LABEL, token::labelToken_, token::PUNCTUATION, token::punctuationToken_, token::STRING, token::stringTokenPtr_, token::UNDEFINED, token::WORD, and token::wordTokenPtr_.
Referenced by token::operator=().
| void operator= | ( | const punctuationToken | p ) | [inline]
|
Definition at line 435 of file tokenI.H.
References p, token::PUNCTUATION, and token::punctuationToken_.
| void operator= | ( | word * | wPtr ) | [inline]
|
Definition at line 442 of file tokenI.H.
References token::WORD, and token::wordTokenPtr_.
| void operator= | ( | const word & | w ) | [inline]
|
Definition at line 449 of file tokenI.H.
References token::operator=().
| void operator= | ( | string * | sPtr ) | [inline]
|
Definition at line 454 of file tokenI.H.
References token::STRING, and token::stringTokenPtr_.
| void operator= | ( | const string & | s ) | [inline]
|
Definition at line 461 of file tokenI.H.
References token::operator=().
| void operator= | ( | const label | l ) | [inline]
|
Definition at line 466 of file tokenI.H.
References token::LABEL, and token::labelToken_.
| void operator= | ( | const floatScalar | s ) | [inline]
|
Definition at line 473 of file tokenI.H.
References token::FLOAT_SCALAR, and token::floatScalarToken_.
| void operator= | ( | const doubleScalar | s ) | [inline]
|
Definition at line 480 of file tokenI.H.
References token::DOUBLE_SCALAR, and token::doubleScalarToken_.
| void operator= | ( | token::compound * | cPtr ) | [inline]
|
Definition at line 487 of file tokenI.H.
References token::COMPOUND, and token::compoundTokenPtr_.
| bool operator== | ( | const token & | t ) | const [inline]
|
Definition at line 495 of file tokenI.H.
References token::COMPOUND, token::compoundTokenPtr_, token::DOUBLE_SCALAR, token::doubleScalarToken_, Foam::equal(), token::ERROR, token::FLOAT_SCALAR, token::floatScalarToken_, token::LABEL, token::labelToken_, token::PUNCTUATION, token::punctuationToken_, token::STRING, token::stringTokenPtr_, token::UNDEFINED, token::WORD, and token::wordTokenPtr_.
Referenced by token::operator!=().
| bool operator== | ( | const punctuationToken | p ) | const [inline]
|
Definition at line 535 of file tokenI.H.
References token::PUNCTUATION, and token::punctuationToken_.
| bool operator== | ( | const word & | w ) | const [inline]
|
Definition at line 540 of file tokenI.H.
References token::WORD, and token::wordToken().
| bool operator== | ( | const string & | s ) | const [inline]
|
Definition at line 545 of file tokenI.H.
References token::STRING, and token::stringToken().
| bool operator== | ( | const label | l ) | const [inline]
|
Definition at line 550 of file tokenI.H.
References token::LABEL, and token::labelToken_.
| bool operator== | ( | const floatScalar | s ) | const [inline]
|
Definition at line 555 of file tokenI.H.
References Foam::equal(), token::FLOAT_SCALAR, and token::floatScalarToken_.
| bool operator== | ( | const doubleScalar | s ) | const [inline]
|
Definition at line 560 of file tokenI.H.
References token::DOUBLE_SCALAR, token::doubleScalarToken_, and Foam::equal().
| bool operator!= | ( | const token & | t ) | const [inline]
|
Definition at line 565 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const punctuationToken | p ) | const [inline]
|
Definition at line 570 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const word & | w ) | const [inline]
|
Definition at line 575 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const string & | s ) | const [inline]
|
Definition at line 580 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const label | l ) | const [inline]
|
Definition at line 595 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const floatScalar | s ) | const [inline]
|
Definition at line 585 of file tokenI.H.
References token::operator==().
| bool operator!= | ( | const doubleScalar | s ) | const [inline]
|
Definition at line 590 of file tokenI.H.
References token::operator==().
| Ostream& operator<< | ( | Ostream & | , |
| const punctuationToken & | |||
| ) | [friend]
|
| ostream& operator<< | ( | ostream & | , |
| const punctuationToken & | |||
| ) | [friend]
|
Foam::token undefinedToken [static]
|
Definition at line 253 of file token.H.
Referenced by Foam::operator<<(), token::operator=(), token::operator==(), token::pToken(), and token::token().
Definition at line 254 of file token.H.
Referenced by Foam::operator<<(), token::operator=(), token::operator==(), token::token(), and token::wordToken().
Definition at line 255 of file token.H.
Referenced by Foam::operator<<(), token::operator=(), token::operator==(), token::stringToken(), and token::token().
| label labelToken_ |
Definition at line 256 of file token.H.
Referenced by token::labelToken(), token::number(), Foam::operator<<(), token::operator=(), token::operator==(), and token::token().
Definition at line 257 of file token.H.
Referenced by token::floatScalarToken(), Foam::operator<<(), token::operator=(), token::operator==(), token::scalarToken(), and token::token().
Definition at line 258 of file token.H.
Referenced by token::doubleScalarToken(), Foam::operator<<(), token::operator=(), token::operator==(), token::scalarToken(), and token::token().
compound* compoundTokenPtr_ [mutable]
|
Definition at line 259 of file token.H.
Referenced by token::compoundToken(), Foam::operator<<(), token::operator=(), token::operator==(), and token::token().