31 tok.
type_ = tokenType::BOOL;
41 tok.
type_ = tokenType::FLAG;
81 type_ = tokenType::UNDEFINED;
101 lineNumber_(tok.lineNumber_)
108 case tokenType::WORD:
109 case tokenType::DIRECTIVE:
115 case tokenType::STRING:
116 case tokenType::VARIABLE:
131 lineNumber_(tok.lineNumber_)
142 lineNumber_(lineNumber)
151 lineNumber_(lineNumber)
160 lineNumber_(lineNumber)
169 lineNumber_(lineNumber)
178 lineNumber_(lineNumber)
187 lineNumber_(lineNumber)
197 lineNumber_(lineNumber)
207 lineNumber_(lineNumber)
212 type_ = tokenType::STRING;
224 lineNumber_(lineNumber)
229 type_ = tokenType::STRING;
249 case tokenType::WORD:
250 case tokenType::DIRECTIVE:
252 delete data_.wordPtr;
256 case tokenType::STRING:
257 case tokenType::VARIABLE:
259 delete data_.stringPtr;
278 std::swap(data_, tok.
data_);
279 std::swap(type_, tok.
type_);
292 if (type_ == tokType)
300 case tokenType::BOOL:
301 case tokenType::INT64:
305 case tokenType::BOOL:
306 case tokenType::INT64:
317 case tokenType::WORD:
318 case tokenType::DIRECTIVE:
322 case tokenType::WORD:
323 case tokenType::DIRECTIVE:
334 case tokenType::STRING:
335 case tokenType::VARIABLE:
340 case tokenType::STRING:
341 case tokenType::VARIABLE:
374 return (type_ != tokenType::UNDEFINED && type_ != tokenType::ERROR);
380 return (type_ == tokenType::UNDEFINED);
386 return (type_ == tokenType::ERROR);
392 return (type_ == tokenType::BOOL);
398 if (type_ == tokenType::BOOL || type_ == tokenType::INT64)
400 return data_.int64Val;
410 return (type_ == tokenType::FLAG);
416 if (type_ == tokenType::FLAG)
418 return data_.flagVal;
421 parseError(
"flag bitmask");
428 return (type_ == tokenType::PUNCTUATION);
433 if( type_ == tokenType::PUNCTUATION )
435 return pToken() == punctuationToken::END_STATEMENT;
444 if( type_ == tokenType::PUNCTUATION )
446 return pToken() == punctuationToken::END_BLOCK;
454 if (type_ == tokenType::PUNCTUATION)
456 return data_.punctuationVal;
459 parseError(
"punctuation character");
460 return punctuationToken::NULL_TOKEN;
468 type_ == tokenType::PUNCTUATION
469 && isseparator(data_.punctuationVal)
476 return (type_ == tokenType::INT64);
481 return (type_ == tokenType::INT64);
486 if (type_ == tokenType::INT64)
488 return data_.int64Val;
497 return static_cast<int32>(int64Token());
502 return (type_ == tokenType::FLOAT);
508 if (type_ == tokenType::FLOAT)
510 return data_.floatVal;
520 return (type_ == tokenType::DOUBLE);
526 if (type_ == tokenType::DOUBLE)
528 return data_.doubleVal;
531 parseError(
"double");
540 type_ == tokenType::FLOAT
541 || type_ == tokenType::DOUBLE
548 if (type_ == tokenType::FLOAT)
550 return data_.floatVal;
552 else if (type_ == tokenType::DOUBLE)
554 return data_.doubleVal;
564 return (type_ == tokenType::INT64 || isReal());
579 parseError(
"number (int64 or real)");
588 type_ == tokenType::WORD
589 || type_ == tokenType::DIRECTIVE
596 return (type_ == tokenType::DIRECTIVE);
604 type_ == tokenType::WORD
605 || type_ == tokenType::DIRECTIVE
608 return *data_.wordPtr;
619 type_ == tokenType::STRING
620 || type_ == tokenType::VARIABLE
628 type_ == tokenType::STRING
629 || type_ == tokenType::VARIABLE
632 return *data_.stringPtr;
636 type_ == tokenType::WORD
637 || type_ == tokenType::DIRECTIVE
641 return *data_.wordPtr;
644 parseError(
"string");
650 return (type_ == tokenType::VARIABLE);
655 return (isWord() || isString());
661 type_ = tokenType::ERROR;
685 case tokenType::WORD:
686 case tokenType::DIRECTIVE:
692 case tokenType::STRING:
693 case tokenType::VARIABLE:
721 type_ = tokenType::PUNCTUATION;
722 data_.punctuationVal = p;
729 type_ = tokenType::INT64;
730 data_.int64Val = val;
736 type_ = tokenType::INT64;
737 data_.int64Val =
static_cast<int64>(val);
744 type_ = tokenType::FLOAT;
745 data_.floatVal = val;
752 type_ = tokenType::DOUBLE;
753 data_.doubleVal = val;
760 type_ = tokenType::WORD;
761 data_.wordPtr =
new word(w);
768 type_ = tokenType::WORD;
769 data_.wordPtr =
new word(std::move(w));
775 if (type_ != tok.
type_)
782 case tokenType::UNDEFINED:
785 case tokenType::BOOL:
788 case tokenType::FLAG:
791 case tokenType::PUNCTUATION:
794 case tokenType::INT64:
797 case tokenType::FLOAT:
800 case tokenType::DOUBLE:
803 case tokenType::WORD:
804 case tokenType::DIRECTIVE:
807 case tokenType::STRING:
808 case tokenType::VARIABLE:
811 case tokenType::ERROR:
821 return (type_ == tokenType::PUNCTUATION && data_.punctuationVal == p);
829 type_ == tokenType::INT64
830 && data_.int64Val == val
838 type_ == tokenType::INT64
839 && data_.int64Val ==
static_cast<int64>(val)
848 type_ == tokenType::FLOAT
849 &&
equal(data_.floatVal, val)
858 type_ == tokenType::DOUBLE
859 &&
equal(
static_cast<real>(data_.doubleVal),
static_cast<real>(val))
867 type_== tokenType::WORD
868 && *data_.wordPtr == w