Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(455)

Unified Diff: frog/tokenizer.dart

Issue 8457007: Better runtime type checks. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: merged, and fix typo in member name Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: frog/tokenizer.dart
diff --git a/frog/tokenizer.dart b/frog/tokenizer.dart
index 394041847045f99edfe2a937ee80b365595a4a1b..a30b0714d56a6ad54b5b01be7a9757324b172d19 100644
--- a/frog/tokenizer.dart
+++ b/frog/tokenizer.dart
@@ -186,7 +186,7 @@ class TokenizerBase extends TokenizerHelpers {
Token finishHex() {
eatHexDigits();
- return _finishToken(TokenKind.HEX_NUMBER);
+ return _finishToken(TokenKind.HEX_INTEGER);
}
Token finishNumber() {
@@ -197,16 +197,18 @@ class TokenizerBase extends TokenizerHelpers {
_nextChar();
if (isDigit(_peekChar())) {
eatDigits();
+ return finishNumberExtra(TokenKind.DOUBLE);
} else {
_index--;
}
}
- return finishNumberExtra();
+ return finishNumberExtra(TokenKind.INTEGER);
}
- Token finishNumberExtra() {
+ Token finishNumberExtra(int kind) {
if (_maybeEatChar(101/*e*/) || _maybeEatChar(69/*E*/)) {
+ kind = TokenKind.DOUBLE;
_maybeEatChar(45/*-*/);
_maybeEatChar(43/*+*/);
eatDigits();
@@ -217,7 +219,7 @@ class TokenizerBase extends TokenizerHelpers {
return _errorToken();
}
- return _finishToken(TokenKind.NUMBER);
+ return _finishToken(kind);
}
Token finishMultilineString(int quote) {
@@ -367,7 +369,7 @@ class TokenizerBase extends TokenizerHelpers {
Token finishDot() {
if (isDigit(_peekChar())) {
eatDigits();
- return finishNumberExtra();
+ return finishNumberExtra(TokenKind.DOUBLE);
} else {
return _finishToken(TokenKind.DOT);
}

Powered by Google App Engine
This is Rietveld 408576698