Index: frog/scripts/token_info.py |
diff --git a/frog/scripts/token_info.py b/frog/scripts/token_info.py |
deleted file mode 100644 |
index 11916a9c48d98eb6f389c7e6f8ddbe31f4edee0f..0000000000000000000000000000000000000000 |
--- a/frog/scripts/token_info.py |
+++ /dev/null |
@@ -1,213 +0,0 @@ |
-# Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
-# for details. All rights reserved. Use of this source code is governed by a |
-# BSD-style license that can be found in the LICENSE file. |
- |
-class Token: |
- def __init__(self, name, text, precedence, customFinishCode=None, |
- stringRepr=None): |
- self.name = name |
- self.text = text |
- self.precedence = precedence |
- self.customFinishCode = customFinishCode |
- |
- if stringRepr is None: |
- if self.text: |
- stringRepr = self.text |
- elif self.name is not None: |
- stringRepr = self.name.lower().replace('_', ' ') |
- |
- self.stringRepr = stringRepr |
- |
- # roughly the user-definable operators |
- EXCLUDES = ['!=', '===', '!==', '&&', '||'] |
- INCLUDES = ['[]', '[]=', '~'] |
- if text in INCLUDES or (self.precedence >= 6 and text not in EXCLUDES): |
- self.methodName = ':' + name.lower() |
- else: |
- self.methodName = None |
- |
- def getFinishCode(self): |
- if self.customFinishCode: |
- return self.customFinishCode |
- else: |
- return '_finishToken(TokenKind.%s)' % self.name |
- |
- |
-class Keyword: |
- def __init__(self, name, text, isPseudo, precedence=0): |
- self.name = name |
- self.text = text |
- self.isPseudo = isPseudo |
- self.precedence = precedence |
- |
- if isPseudo: |
- prefix = 'pseudo-' |
- else: |
- prefix = '' |
- |
- self.stringRepr = '%skeyword %r' % (prefix, self.text) |
- |
- def __repr__(self): |
- return 'Keyword(%r)' % self.text |
- |
- |
-tokens = [ |
- Token('END_OF_FILE', "", 0), |
- |
- Token('LPAREN', "(", 0), |
- Token('RPAREN', ")", 0), |
- Token('LBRACK', "[", 0), |
- Token('RBRACK', "]", 0), |
- Token('LBRACE', "{", 0, '_finishOpenBrace()'), |
- Token('RBRACE', "}", 0, '_finishCloseBrace()'), |
- Token('COLON', ":", 0), |
- Token('ARROW', "=>", 0), |
- Token('SEMICOLON', ";", 0), |
- Token('COMMA', ",", 0), |
- Token('HASH', "#", 0), |
- Token('HASHBANG', "#!", 0, 'finishHashBang()'), |
- |
- Token('DOT', ".", 0, 'finishDot()'), |
- Token('ELLIPSIS', "...", 0), |
- Token('INCR', "++", 0), |
- Token('DECR', "--", 0), |
- |
- Token('BIT_NOT', "~", 0), |
- Token('NOT', "!", 0), |
- |
- # Assignment operators |
- Token('ASSIGN', "=", 2), |
- Token('ASSIGN_OR', "|=", 2), |
- Token('ASSIGN_XOR', "^=", 2), |
- Token('ASSIGN_AND', "&=", 2), |
- Token('ASSIGN_SHL', "<<=", 2), |
- Token('ASSIGN_SAR', ">>=", 2), |
- Token('ASSIGN_SHR', ">>>=", 2), |
- Token('ASSIGN_ADD', "+=", 2), |
- Token('ASSIGN_SUB', "-=", 2), |
- Token('ASSIGN_MUL', "*=", 2), |
- Token('ASSIGN_DIV', "/=", 2), |
- Token('ASSIGN_TRUNCDIV', "~/=", 2), |
- Token('ASSIGN_MOD', "%=", 2), |
- |
- Token('CONDITIONAL', "?", 3), |
- |
- Token('OR', "||", 4), |
- Token('AND', "&&", 5), |
- Token('BIT_OR', "|", 6), |
- Token('BIT_XOR', "^", 7), |
- Token('BIT_AND', "&", 8), |
- |
- # Shift operators |
- Token('SHL', "<<", 11), |
- Token('SAR', ">>", 11), |
- Token('SHR', ">>>", 11), |
- |
- # Additive operators |
- Token('ADD', "+", 12), |
- Token('SUB', "-", 12), |
- |
- # Multiplicative operators |
- Token('MUL', "*", 13), |
- Token('DIV', "/", 13), |
- Token('TRUNCDIV', "~/", 13), |
- Token('MOD', "%", 13), |
- |
- # Equality operators |
- Token('EQ', "==", 9), |
- Token('NE', "!=", 9), |
- Token('EQ_STRICT', "===", 9), |
- Token('NE_STRICT', "!==", 9), |
- |
- # Relational operators |
- Token('LT', "<", 10), |
- Token('GT', ">", 10), |
- Token('LTE', "<=", 10), |
- Token('GTE', ">=", 10), |
- |
- # Special tokens for index operator methods |
- Token('INDEX', "[]", 0), |
- Token('SETINDEX', "[]=", 0), |
- |
- |
- Token('STRING', "", 0), |
- Token('STRING_PART', "", 0), |
- Token('INTEGER', "", 0), |
- Token('HEX_INTEGER', "", 0), |
- Token('DOUBLE', "", 0), |
- |
- Token('WHITESPACE', "", 0), |
- Token('COMMENT', "", 0), |
- Token('ERROR', "", 0), |
- |
- Token('INCOMPLETE_STRING', "", 0), |
- Token('INCOMPLETE_COMMENT', "", 0), |
- Token('INCOMPLETE_MULTILINE_STRING_DQ', "", 0), |
- Token('INCOMPLETE_MULTILINE_STRING_SQ', "", 0), |
- |
- |
- Token(None, '//', 0, 'finishSingleLineComment()'), |
- Token(None, '/*', 0, 'finishMultiLineComment()'), |
- Token(None, '$"', 0, 'finishString(34/*"*/)'), |
- Token(None, '$\'', 0, 'finishString(39/*\'*/)'), |
- Token(None, '$', 0, 'finishIdentifier(36/*$*/)'), |
- Token(None, '@"', 0, 'finishRawString(34/*"*/)'), |
- Token(None, '@\'', 0, 'finishRawString(39/*\'*/)'), |
- Token(None, '"', 0, 'finishString(34/*"*/)'), |
- Token(None, '\'', 0, 'finishString(39/*\'*/)'), |
- Token(None, '0', 0, 'finishNumber()'), |
- Token(None, '0x', 0, 'finishHex()'), |
- Token(None, '0X', 0, 'finishHex()'), |
- |
- Token('IDENTIFIER', "", 0), # must be last |
- |
- ] |
- |
-# TODO(jimhug): Validate this list with Dart.g and with the lang spec. |
-keywords = [ |
- Keyword('ABSTRACT', "abstract", True), |
- Keyword('ASSERT', "assert", True), |
- Keyword('AWAIT', "await", False), # experimental feature |
- Keyword('BREAK', "break", False), |
- Keyword('CALL', "call", True), |
- Keyword('CASE', "case", False), |
- Keyword('CATCH', "catch", False), |
- Keyword('CLASS', "class", False), |
- Keyword('CONST', "const", False), |
- Keyword('CONTINUE', "continue", False), |
- Keyword('DEFAULT', "default", False), |
- Keyword('DO', "do", False), |
- Keyword('ELSE', "else", False), |
- Keyword('EXTENDS', "extends", False), |
- Keyword('FACTORY', "factory", True), |
- Keyword('FALSE', "false", False), |
- Keyword('FINAL', "final", False), |
- Keyword('FINALLY', "finally", False), |
- Keyword('FOR', "for", False), |
- Keyword('GET', "get", True), |
- Keyword('IF', "if", False), |
- Keyword('IMPLEMENTS', "implements", True), |
- Keyword('IMPORT', "import", True), |
- Keyword('IN', "in", False), |
- Keyword('INTERFACE', "interface", True), |
- Keyword('IS', "is", False, 10), |
- Keyword('LIBRARY', "library", True), |
- Keyword('NATIVE', "native", True), |
- Keyword('NEGATE', "negate", True), |
- Keyword('NEW', "new", False), |
- Keyword('NULL', "null", False), |
- Keyword('OPERATOR', "operator", True), |
- Keyword('RETURN', "return", False), |
- Keyword('SET', "set", True), |
- Keyword('SOURCE', "source", True), |
- Keyword('STATIC', "static", True), |
- Keyword('SUPER', "super", False), |
- Keyword('SWITCH', "switch", False), |
- Keyword('THIS', "this", False), |
- Keyword('THROW', "throw", False), |
- Keyword('TRUE', "true", False), |
- Keyword('TYPEDEF', "typedef", True), |
- Keyword('TRY', "try", False), |
- Keyword('VAR', "var", False), |
- Keyword('VOID', "void", False), |
- Keyword('WHILE', "while", False)] |