Example #1
0
  static {
    List<String> directives = new ArrayList<String>();
    List<String> keywords = new ArrayList<String>();
    List<String> pseudoKeywords = new ArrayList<String>();
    List<String> operators = new ArrayList<String>();

    com.google.dart.compiler.parser.Token[] tokens = com.google.dart.compiler.parser.Token.values();

    for (int i = 0; i < tokens.length; i++) {
      com.google.dart.compiler.parser.Token token = tokens[i];
      if ((BREAK.ordinal() <= token.ordinal() && token.ordinal() <= WITH.ordinal())
          || token.ordinal() == AS.ordinal()
          || token.ordinal() == IS.ordinal()) {
        keywords.add(token.getSyntax());
      }

      if ((LIBRARY.ordinal() <= token.ordinal()) && (token.ordinal() <= NATIVE.ordinal())) {
        String name = token.getSyntax();
        directives.add(name.substring(1));
      }

      if (token.isBinaryOperator() || token.isUnaryOperator()) {
        operators.add(token.getSyntax());
      }
    }

    for (String kw : DartParser.PSEUDO_KEYWORDS) {
      pseudoKeywords.add(kw);
    }

    DIRECTIVES = directives.toArray(new String[directives.size()]);
    KEYWORDS = keywords.toArray(new String[keywords.size()]);
    PSEUDO_KEYWORDS = pseudoKeywords.toArray(new String[pseudoKeywords.size()]);
    OPERATORS = operators.toArray(new String[operators.size()]);
  }