| Index: third_party/pkg/angular/lib/core/parser/tokens.dart
|
| diff --git a/third_party/pkg/angular/lib/core/parser/tokens.dart b/third_party/pkg/angular/lib/core/parser/tokens.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b3b5bf18f55631154db9027201eb4f0943620bf1
|
| --- /dev/null
|
| +++ b/third_party/pkg/angular/lib/core/parser/tokens.dart
|
| @@ -0,0 +1,65 @@
|
| +part of angular.core.parser.lexer;
|
| +
|
| +class Token {
|
| + static const Token EOF = const Token._(-1);
|
| + final int index;
|
| + const Token._(this.index);
|
| +
|
| + bool get isIdentifier => false;
|
| + bool get isString => false;
|
| + bool get isNumber => false;
|
| +
|
| + bool isCharacter(int code) => false;
|
| + bool isOperator(String operator) => false;
|
| +
|
| + bool get isKeyword => false;
|
| + bool get isKeywordNull => false;
|
| + bool get isKeywordUndefined => false;
|
| + bool get isKeywordTrue => false;
|
| + bool get isKeywordFalse => false;
|
| +
|
| + num toNumber() => null;
|
| +}
|
| +
|
| +class CharacterToken extends Token {
|
| + final int _code;
|
| + CharacterToken(int index, this._code) : super._(index);
|
| + bool isCharacter(int code) => _code == code;
|
| + String toString() => new String.fromCharCode(_code);
|
| +}
|
| +
|
| +class IdentifierToken extends Token {
|
| + final String _text;
|
| + final bool _isKeyword;
|
| + IdentifierToken(int index, this._text, this._isKeyword) : super._(index);
|
| + bool get isIdentifier => !_isKeyword;
|
| + bool get isKeyword => _isKeyword;
|
| + bool get isKeywordNull => _isKeyword && _text == "null";
|
| + bool get isKeywordUndefined => _isKeyword && _text == "undefined";
|
| + bool get isKeywordTrue => _isKeyword && _text == "true";
|
| + bool get isKeywordFalse => _isKeyword && _text == "false";
|
| + String toString() => _text;
|
| +}
|
| +
|
| +class OperatorToken extends Token {
|
| + final String _text;
|
| + OperatorToken(int index, this._text) : super._(index);
|
| + bool isOperator(String operator) => _text == operator;
|
| + String toString() => _text;
|
| +}
|
| +
|
| +class NumberToken extends Token {
|
| + final num _value;
|
| + NumberToken(int index, this._value) : super._(index);
|
| + bool get isNumber => true;
|
| + num toNumber() => _value;
|
| + String toString() => "$_value";
|
| +}
|
| +
|
| +class StringToken extends Token {
|
| + final String input;
|
| + final String _value;
|
| + StringToken(int index, this.input, this._value) : super._(index);
|
| + bool get isString => true;
|
| + String toString() => _value;
|
| +}
|
|
|