| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 #include "vm/scanner.h" | 5 #include "vm/scanner.h" |
| 6 | 6 |
| 7 #include "platform/assert.h" | 7 #include "platform/assert.h" |
| 8 #include "vm/dart.h" | 8 #include "vm/dart.h" |
| 9 #include "vm/flags.h" | 9 #include "vm/flags.h" |
| 10 #include "vm/object.h" | 10 #include "vm/object.h" |
| (...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 324 i++; | 324 i++; |
| 325 } | 325 } |
| 326 } | 326 } |
| 327 | 327 |
| 328 // We did not read a keyword. | 328 // We did not read a keyword. |
| 329 current_token_.kind = Token::kIDENT; | 329 current_token_.kind = Token::kIDENT; |
| 330 String& literal = | 330 String& literal = |
| 331 String::ZoneHandle(Z, Symbols::New(source_, ident_pos, ident_length)); | 331 String::ZoneHandle(Z, Symbols::New(source_, ident_pos, ident_length)); |
| 332 if (ident_char0 == Library::kPrivateIdentifierStart) { | 332 if (ident_char0 == Library::kPrivateIdentifierStart) { |
| 333 // Private identifiers are mangled on a per library basis. | 333 // Private identifiers are mangled on a per library basis. |
| 334 literal = String::Concat(literal, private_key_); | 334 literal = Symbols::FromConcat(literal, private_key_); |
| 335 literal = Symbols::New(literal); | |
| 336 } | 335 } |
| 337 current_token_.literal = &literal; | 336 current_token_.literal = &literal; |
| 338 } | 337 } |
| 339 | 338 |
| 340 | 339 |
| 341 // Parse integer or double number literal of format: | 340 // Parse integer or double number literal of format: |
| 342 // NUMBER = INTEGER | DOUBLE | 341 // NUMBER = INTEGER | DOUBLE |
| 343 // INTEGER = D+ | (("0x" | "0X") H+) | 342 // INTEGER = D+ | (("0x" | "0X") H+) |
| 344 // DOUBLE = ((D+ ["." D*]) | ("." D+)) [ EXPONENT ] | 343 // DOUBLE = ((D+ ["." D*]) | ("." D+)) [ EXPONENT ] |
| 345 // EXPONENT = ("e" | "E") ["+" | "-"] D+ | 344 // EXPONENT = ("e" | "E") ["+" | "-"] D+ |
| (...skipping 627 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 973 keywords_[i].keyword_symbol = &Symbols::Keyword(token); | 972 keywords_[i].keyword_symbol = &Symbols::Keyword(token); |
| 974 | 973 |
| 975 int ch = keywords_[i].keyword_chars[0] - 'a'; | 974 int ch = keywords_[i].keyword_chars[0] - 'a'; |
| 976 if (keywords_char_offset_[ch] == Token::kNumKeywords) { | 975 if (keywords_char_offset_[ch] == Token::kNumKeywords) { |
| 977 keywords_char_offset_[ch] = i; | 976 keywords_char_offset_[ch] = i; |
| 978 } | 977 } |
| 979 } | 978 } |
| 980 } | 979 } |
| 981 | 980 |
| 982 } // namespace dart | 981 } // namespace dart |
| OLD | NEW |