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 // Scanner class for the Dart language. The scanner reads source text | 5 // Scanner class for the Dart language. The scanner reads source text |
6 // and produces a stream of tokens which is used by the parser. | 6 // and produces a stream of tokens which is used by the parser. |
7 // | 7 // |
8 | 8 |
9 #ifndef VM_SCANNER_H_ | 9 #ifndef VM_SCANNER_H_ |
10 #define VM_SCANNER_H_ | 10 #define VM_SCANNER_H_ |
(...skipping 28 matching lines...) Expand all Loading... |
39 int offset; // Offset in source string. | 39 int offset; // Offset in source string. |
40 int length; // Length of token in source. | 40 int length; // Length of token in source. |
41 SourcePosition position; // Text position in source. | 41 SourcePosition position; // Text position in source. |
42 String* literal; // Identifier, number or string literal. | 42 String* literal; // Identifier, number or string literal. |
43 }; | 43 }; |
44 | 44 |
45 // Dummy token index reflecting an unknown source position. | 45 // Dummy token index reflecting an unknown source position. |
46 static const intptr_t kDummyTokenIndex = 0; | 46 static const intptr_t kDummyTokenIndex = 0; |
47 | 47 |
48 // Character used to indicate a private identifier. | 48 // Character used to indicate a private identifier. |
49 static const char kPrivateIdentifierStart = '_'; | 49 static const unsigned char kPrivateIdentifierStart = '_'; |
50 | 50 |
51 // Character used to separate the private identifier from the key. | 51 // Character used to separate the private identifier from the key. |
52 static const char kPrivateKeySeparator = '@'; | 52 static const char kPrivateKeySeparator = '@'; |
53 | 53 |
54 typedef ZoneGrowableArray<TokenDescriptor> GrowableTokenStream; | 54 typedef ZoneGrowableArray<TokenDescriptor> GrowableTokenStream; |
55 | 55 |
56 // Initializes scanner to scan string source. | 56 // Initializes scanner to scan string source. |
57 Scanner(const String& source, const String& private_key); | 57 Scanner(const String& source, const String& private_key); |
58 ~Scanner(); | 58 ~Scanner(); |
59 | 59 |
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
216 | 216 |
217 SourcePosition c0_pos_; // Source position of lookahead character c0_. | 217 SourcePosition c0_pos_; // Source position of lookahead character c0_. |
218 KeywordTable keywords_[Token::numKeywords]; | 218 KeywordTable keywords_[Token::numKeywords]; |
219 Array& keyword_symbol_table_; // Access to keyword symbols in object store. | 219 Array& keyword_symbol_table_; // Access to keyword symbols in object store. |
220 }; | 220 }; |
221 | 221 |
222 | 222 |
223 } // namespace dart | 223 } // namespace dart |
224 | 224 |
225 #endif // VM_SCANNER_H_ | 225 #endif // VM_SCANNER_H_ |
OLD | NEW |