OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** | 5 /** |
6 * A keyword in the Dart programming language. | 6 * A keyword in the Dart programming language. |
7 */ | 7 */ |
8 class Keyword implements SourceString { | 8 class Keyword implements SourceString { |
9 static const List<Keyword> values = const <Keyword> [ | 9 static const List<Keyword> values = const <Keyword> [ |
10 const Keyword("assert"), | 10 const Keyword("assert"), |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 PrecedenceInfo this.info: KEYWORD_INFO}); | 87 PrecedenceInfo this.info: KEYWORD_INFO}); |
88 | 88 |
89 static Map<String, Keyword> computeKeywordMap() { | 89 static Map<String, Keyword> computeKeywordMap() { |
90 Map<String, Keyword> result = new LinkedHashMap<String, Keyword>(); | 90 Map<String, Keyword> result = new LinkedHashMap<String, Keyword>(); |
91 for (Keyword keyword in values) { | 91 for (Keyword keyword in values) { |
92 result[keyword.syntax] = keyword; | 92 result[keyword.syntax] = keyword; |
93 } | 93 } |
94 return result; | 94 return result; |
95 } | 95 } |
96 | 96 |
97 int hashCode() => syntax.hashCode(); | 97 int get hashCode => syntax.hashCode; |
98 | 98 |
99 bool operator ==(other) { | 99 bool operator ==(other) { |
100 return other is SourceString && toString() == other.slowToString(); | 100 return other is SourceString && toString() == other.slowToString(); |
101 } | 101 } |
102 | 102 |
103 Iterator<int> iterator() => new StringCodeIterator(syntax); | 103 Iterator<int> iterator() => new StringCodeIterator(syntax); |
104 | 104 |
105 void printOn(StringBuffer sb) { | 105 void printOn(StringBuffer sb) { |
106 sb.add(syntax); | 106 sb.add(syntax); |
107 } | 107 } |
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
222 final Keyword keyword; | 222 final Keyword keyword; |
223 | 223 |
224 LeafKeywordState(String syntax) : keyword = Keyword.keywords[syntax]; | 224 LeafKeywordState(String syntax) : keyword = Keyword.keywords[syntax]; |
225 | 225 |
226 bool isLeaf() => true; | 226 bool isLeaf() => true; |
227 | 227 |
228 KeywordState next(int c) => null; | 228 KeywordState next(int c) => null; |
229 | 229 |
230 String toString() => keyword.syntax; | 230 String toString() => keyword.syntax; |
231 } | 231 } |
OLD | NEW |