Chromium Code Reviews| Index: frogsh |
| =================================================================== |
| --- frogsh (revision 839) |
| +++ frogsh (working copy) |
| @@ -283,6 +283,11 @@ |
| TypeError.prototype.toString = function() { |
| return ("Failed type check: type " + this.srcType + " is not assignable to type ") + ("" + this.dstType + " of " + this.dstName + " in " + this.url + " at line ") + ("" + this.line + ", column " + this.column + "."); |
| } |
| +// ********** Code for FallThroughError ************** |
| +function FallThroughError() {} |
| +FallThroughError.prototype.toString = function() { |
| + return ("Switch case fall-through in " + this.url + " at line " + this.line + "."); |
| +} |
| // ********** Code for Object ************** |
| Object.prototype.get$dynamic = function() { |
| return this; |
| @@ -294,7 +299,7 @@ |
| // ********** Code for IndexOutOfRangeException ************** |
| function IndexOutOfRangeException() {} |
| IndexOutOfRangeException.prototype.toString = function() { |
| - return ("IndexOutOfRangeException: " + this._dart_core_index + ""); |
| + return ("IndexOutOfRangeException: " + this._index + ""); |
| } |
| // ********** Code for NoSuchMethodException ************** |
| function NoSuchMethodException() {} |
| @@ -337,7 +342,7 @@ |
| // ********** Code for UnsupportedOperationException ************** |
| function UnsupportedOperationException() {} |
| UnsupportedOperationException.prototype.toString = function() { |
| - return ("UnsupportedOperationException: " + this._dart_core_message + ""); |
| + return ("UnsupportedOperationException: " + this._message + ""); |
| } |
| // ********** Code for IllegalJSRegExpException ************** |
| function IllegalJSRegExpException() {} |
| @@ -448,7 +453,7 @@ |
| } |
| ListIterator.prototype.next = function() { |
| if (!this.hasNext()) { |
| - $throw(const$9/*const NoMoreElementsException()*/); |
| + $throw(const$121/*const NoMoreElementsException()*/); |
| } |
| return this._array.$index(this._pos++); |
| } |
| @@ -485,7 +490,7 @@ |
| } |
| _AllMatchesIterator.prototype.next = function() { |
| if (!this.hasNext()) { |
| - $throw(const$9/*const NoMoreElementsException()*/); |
| + $throw(const$121/*const NoMoreElementsException()*/); |
| } |
| var next = this._next; |
| this._next = null; |
| @@ -537,7 +542,7 @@ |
| NumImplementation.prototype.compareTo = function(other) { |
| var thisValue = this.toDouble(); |
| if (thisValue < other) { |
| - return -1; |
| + return -1.000000/*-1*/; |
|
jimhug
2011/10/27 17:45:11
It looks like you didn't do a "true" selfhost buil
|
| } |
| else if (thisValue > other) { |
| return 1; |
| @@ -547,7 +552,7 @@ |
| var thisIsNegative = this.isNegative(); |
| var otherIsNegative = other.isNegative(); |
| if ($eq(thisIsNegative, otherIsNegative)) return 0; |
| - if (thisIsNegative) return -1; |
| + if (thisIsNegative) return -1.000000/*-1*/; |
| return 1; |
| } |
| return 0; |
| @@ -559,19 +564,19 @@ |
| return 1; |
| } |
| else { |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| } |
| // ********** Code for DurationImplementation ************** |
| function DurationImplementation(days, hours, minutes, seconds, milliseconds) { |
| - this._durationInMilliseconds = days * 86400000/*Duration.MILLISECONDS_PER_DAY*/ + hours * 3600000/*Duration.MILLISECONDS_PER_HOUR*/ + minutes * 60000/*Duration.MILLISECONDS_PER_MINUTE*/ + seconds * 1000/*Duration.MILLISECONDS_PER_SECOND*/ + milliseconds; |
| + this._durationInMilliseconds = days * 86400000.000000/*Duration.MILLISECONDS_PER_DAY*/ + hours * 3600000.000000/*Duration.MILLISECONDS_PER_HOUR*/ + minutes * 60000.000000/*Duration.MILLISECONDS_PER_MINUTE*/ + seconds * 1000/*Duration.MILLISECONDS_PER_SECOND*/ + milliseconds; |
| // Initializers done |
| } |
| DurationImplementation.prototype.get$inHours = function() { |
| - return $truncdiv(this._durationInMilliseconds, 3600000/*Duration.MILLISECONDS_PER_HOUR*/); |
| + return $truncdiv(this._durationInMilliseconds, 3600000.000000/*Duration.MILLISECONDS_PER_HOUR*/); |
| } |
| DurationImplementation.prototype.get$inMinutes = function() { |
| - return $truncdiv(this._durationInMilliseconds, 60000/*Duration.MILLISECONDS_PER_MINUTE*/); |
| + return $truncdiv(this._durationInMilliseconds, 60000.000000/*Duration.MILLISECONDS_PER_MINUTE*/); |
| } |
| DurationImplementation.prototype.get$inSeconds = function() { |
| return $truncdiv(this._durationInMilliseconds, 1000/*Duration.MILLISECONDS_PER_SECOND*/); |
| @@ -646,7 +651,7 @@ |
| var hash = HashMapImplementation._firstProbe(key.hashCode(), this._keys.length); |
| var numberOfProbes = 1; |
| var initialHash = hash; |
| - var insertionIndex = -1; |
| + var insertionIndex = -1.000000/*-1*/; |
| while (true) { |
| var existingKey = this._keys.$index(hash); |
| if (existingKey == null) { |
| @@ -668,7 +673,7 @@ |
| var initialHash = hash; |
| while (true) { |
| var existingKey = this._keys.$index(hash); |
| - if (existingKey == null) return -1; |
| + if (existingKey == null) return -1.000000/*-1*/; |
| if ($eq(existingKey, key)) return hash; |
| hash = HashMapImplementation._nextProbe(hash, numberOfProbes++, this._keys.length); |
| } |
| @@ -772,7 +777,7 @@ |
| return list; |
| } |
| HashMapImplementation.prototype.containsKey = function(key) { |
| - return (this._probeForLookup(key) != -1); |
| + return (this._probeForLookup(key) != -1.000000/*-1*/); |
| } |
| HashMapImplementation.prototype.forEach$1 = HashMapImplementation.prototype.forEach; |
| // ********** Code for HashMapImplementation$E$E ************** |
| @@ -801,7 +806,7 @@ |
| var hash = HashMapImplementation._firstProbe(key.hashCode(), this._keys.length); |
| var numberOfProbes = 1; |
| var initialHash = hash; |
| - var insertionIndex = -1; |
| + var insertionIndex = -1.000000/*-1*/; |
| while (true) { |
| var existingKey = this._keys.$index(hash); |
| if (existingKey == null) { |
| @@ -823,7 +828,7 @@ |
| var initialHash = hash; |
| while (true) { |
| var existingKey = this._keys.$index(hash); |
| - if (existingKey == null) return -1; |
| + if (existingKey == null) return -1.000000/*-1*/; |
| if ($eq(existingKey, key)) return hash; |
| hash = HashMapImplementation._nextProbe(hash, numberOfProbes++, this._keys.length); |
| } |
| @@ -907,7 +912,7 @@ |
| return list; |
| } |
| HashMapImplementation$E$E.prototype.containsKey = function(key) { |
| - return (this._probeForLookup(key) != -1); |
| + return (this._probeForLookup(key) != -1.000000/*-1*/); |
| } |
| // ********** Code for HashMapImplementation$K$DoubleLinkedQueueEntry$KeyValuePair$K$V ************** |
| function HashMapImplementation$K$DoubleLinkedQueueEntry$KeyValuePair$K$V() { |
| @@ -1027,7 +1032,7 @@ |
| $inherits(HashSetImplementation$E, HashSetImplementation); |
| // ********** Code for HashSetIterator ************** |
| function HashSetIterator(set_) { |
| - this._nextValidIndex = -1; |
| + this._nextValidIndex = -1.000000/*-1*/; |
| this._entries = set_._backingMap._keys; |
| // Initializers done |
| this._advance(); |
| @@ -1041,7 +1046,7 @@ |
| } |
| HashSetIterator.prototype.next = function() { |
| if (!this.hasNext()) { |
| - $throw(const$9/*const NoMoreElementsException()*/); |
| + $throw(const$121/*const NoMoreElementsException()*/); |
| } |
| var res = this._entries.$index(this._nextValidIndex); |
| this._advance(); |
| @@ -1059,7 +1064,7 @@ |
| } |
| // ********** Code for HashSetIterator$E ************** |
| function HashSetIterator$E(set_) { |
| - this._nextValidIndex = -1; |
| + this._nextValidIndex = -1.000000/*-1*/; |
| this._entries = set_._backingMap._keys; |
| // Initializers done |
| this._advance(); |
| @@ -1262,13 +1267,13 @@ |
| } |
| $inherits(_DoubleLinkedQueueEntrySentinel, DoubleLinkedQueueEntry$E); |
| _DoubleLinkedQueueEntrySentinel.prototype.remove = function() { |
| - $throw(const$10/*const EmptyQueueException()*/); |
| + $throw(const$122/*const EmptyQueueException()*/); |
| } |
| _DoubleLinkedQueueEntrySentinel.prototype._asNonSentinelEntry = function() { |
| return null; |
| } |
| _DoubleLinkedQueueEntrySentinel.prototype.get$element = function() { |
| - $throw(const$10/*const EmptyQueueException()*/); |
| + $throw(const$122/*const EmptyQueueException()*/); |
| } |
| // ********** Code for _DoubleLinkedQueueEntrySentinel$E ************** |
| function _DoubleLinkedQueueEntrySentinel$E() { |
| @@ -1450,7 +1455,7 @@ |
| } |
| _DoubleLinkedQueueIterator.prototype.next = function() { |
| if (!this.hasNext()) { |
| - $throw(const$9/*const NoMoreElementsException()*/); |
| + $throw(const$121/*const NoMoreElementsException()*/); |
| } |
| this._currentEntry = this._currentEntry._next; |
| return this._currentEntry.get$element(); |
| @@ -1867,21 +1872,24 @@ |
| // ********** Code for LinkFactory ************** |
| function LinkFactory() {} |
| LinkFactory.Link$factory = function(head, tail) { |
| - return new LinkEntry(head, (tail == null) ? const$325/*const LinkTail()*/ : tail); |
| + return new LinkEntry(head, (tail == null) ? const$317/*const LinkTail()*/ : tail); |
| } |
| LinkFactory.Link$fromList$factory = function(list) { |
| switch (list.length) { |
| case 0: |
| - return const$325/*const LinkTail()*/; |
| + return const$317/*const LinkTail()*/; |
| + $throw(new FallThroughError("./leg/util/link_implementation.dart", 12)) |
| case 1: |
| return LinkFactory.Link$factory(list.$index(0)); |
| + $throw(new FallThroughError("./leg/util/link_implementation.dart", 14)) |
| case 2: |
| return LinkFactory.Link$factory(list.$index(0), LinkFactory.Link$factory(list.$index(1))); |
| + $throw(new FallThroughError("./leg/util/link_implementation.dart", 16)) |
| case 3: |
| @@ -1924,7 +1932,7 @@ |
| return null; |
| } |
| LinkTail.prototype.toList = function() { |
| - return const$8/*const []*/; |
| + return const$120/*const []*/; |
| } |
| LinkTail.prototype.isEmpty = function() { |
| return true; |
| @@ -1973,7 +1981,7 @@ |
| function AbstractScanner() {} |
| AbstractScanner.prototype.tokenize = function() { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| next = this.bigSwitch(next); |
| } |
| return this.firstToken(); |
| @@ -1988,138 +1996,169 @@ |
| this.appendWhiteSpace(next); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 62)) |
| case 60/*null.$LT*/: |
| return this.tokenizeLessThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 65)) |
|
jimhug
2011/10/27 17:45:11
Hopefully, this code - as well as our other simila
Emily Fortuna
2011/10/27 17:59:04
Yeah, I've reversed this change in r843. Will make
|
| case 62/*null.$GT*/: |
| return this.tokenizeGreaterThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 68)) |
| case 61/*null.$EQ*/: |
| return this.tokenizeEquals(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 71)) |
| case 33/*null.$BANG*/: |
| return this.tokenizeExclamation(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 74)) |
| case 43/*null.$PLUS*/: |
| return this.tokenizePlus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 77)) |
| case 45/*null.$MINUS*/: |
| return this.tokenizeMinus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 80)) |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiply(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 83)) |
| case 37/*null.$PERCENT*/: |
| return this.tokenizePercent(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 86)) |
| case 38/*null.$AMPERSAND*/: |
| return this.tokenizeAmpersand(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 89)) |
| case 124/*null.$BAR*/: |
| return this.tokenizeBar(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 92)) |
| case 94/*null.$CARET*/: |
| return this.tokenizeCaret(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 95)) |
| case 91/*null.$LBRACKET*/: |
| return this.tokenizeOpenBracket(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 98)) |
| case 126/*null.$TILDE*/: |
| return this.tokenizeTilde(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 101)) |
| case 92/*null.$BACKSLASH*/: |
| this.appendStringToken(next, "\\"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 105)) |
| case 35/*null.$HASH*/: |
| return this.tokenizeTag(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 108)) |
| case 40/*null.$LPAREN*/: |
| this.appendStringToken(next, "("); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 112)) |
| case 41/*null.$RPAREN*/: |
| this.appendStringToken(next, ")"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 116)) |
| case 44/*null.$COMMA*/: |
| this.appendStringToken(next, ","); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 120)) |
| case 58/*null.$COLON*/: |
| this.appendStringToken(next, ":"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 124)) |
| case 59/*null.$SEMICOLON*/: |
| this.appendStringToken(next, ";"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 128)) |
| case 63/*null.$QUESTION*/: |
| this.appendStringToken(next, "?"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 132)) |
| case 93/*null.$RBRACKET*/: |
| this.appendStringToken(next, "]"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 136)) |
| case 96/*null.$BACKPING*/: |
| this.appendStringToken(next, "`"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 140)) |
| case 123/*null.$LBRACE*/: |
| this.appendStringToken(next, "{"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 144)) |
| case 125/*null.$RBRACE*/: |
| this.appendStringToken(next, "}"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 148)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSlashOrComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 151)) |
| case 64/*null.$AT*/: |
| return this.tokenizeRawString(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 154)) |
| case 34/*null.$DQ*/: |
| case 39/*null.$SQ*/: |
| return this.tokenizeString(next, this.get$byteOffset(), false); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 158)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeDotOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 161)) |
| case 48/*null.$0*/: |
| return this.tokenizeHexOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 164)) |
| case 49/*null.$1*/: |
| case 50/*null.$2*/: |
| @@ -2132,6 +2171,7 @@ |
| case 57/*null.$9*/: |
| return this.tokenizeNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 175)) |
| case 36/*null.$DOLLAR*/: |
| case 65/*null.$A*/: |
| @@ -2189,11 +2229,12 @@ |
| case 122/*null.$z*/: |
| return this.tokenizeIdentifier(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 231)) |
| default: |
| - if (next == -1) { |
| - return -1; |
| + if (next == -1.000000/*-1*/) { |
| + return -1.000000/*-1*/; |
| } |
| if (next < 0x1f) { |
| $throw(this.get$charOffset()); |
| @@ -2246,11 +2287,13 @@ |
| this.appendStringToken(124/*null.$BAR*/, "||"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 292)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(124/*null.$BAR*/, "|="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 295)) |
| default: |
| @@ -2266,11 +2309,13 @@ |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&&"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 308)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 311)) |
| default: |
| @@ -2292,11 +2337,13 @@ |
| this.appendStringToken(45/*null.$MINUS*/, "--"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 334)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(45/*null.$MINUS*/, "-="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 337)) |
| default: |
| @@ -2312,11 +2359,13 @@ |
| this.appendStringToken(43/*null.$PLUS*/, "++"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 350)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(43/*null.$PLUS*/, "+="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 353)) |
| default: |
| @@ -2348,6 +2397,7 @@ |
| this.appendStringToken(62/*null.$GT*/, ">="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 386)) |
| case 62/*null.$GT*/: |
| @@ -2357,10 +2407,12 @@ |
| this.appendStringToken(62/*null.$GT*/, ">>="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 392)) |
| case 62/*null.$GT*/: |
| return this.select(61/*null.$EQ*/, ">>>=", ">>>"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 394)) |
| default: |
| @@ -2368,6 +2420,7 @@ |
| return next; |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 389)) |
| default: |
| @@ -2383,10 +2436,12 @@ |
| this.appendStringToken(60/*null.$LT*/, "<="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 411)) |
| case 60/*null.$LT*/: |
| return this.select(61/*null.$EQ*/, "<<=", "<<"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 413)) |
| default: |
| @@ -2412,10 +2467,12 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 435)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeFractionPart(this.advance(), start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 438)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -2423,6 +2480,7 @@ |
| case 68/*null.$D*/: |
| return this.tokenizeFractionPart(next, start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 444)) |
| default: |
| @@ -2471,6 +2529,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 491)) |
| default: |
| @@ -2501,10 +2560,12 @@ |
| { |
| return this.tokenizeFractionPart(next, start); |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 516)) |
| case 46/*null.$PERIOD*/: |
| return this.select(46/*null.$PERIOD*/, "...", ".."); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 521)) |
| default: |
| @@ -2530,6 +2591,7 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 543)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -2537,6 +2599,7 @@ |
| next = this.tokenizeExponent(this.advance()); |
| done = true; |
| continue LOOP; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 549)) |
| default: |
| @@ -2572,6 +2635,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 582)) |
| default: |
| @@ -2590,15 +2654,18 @@ |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 598)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSingleLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 601)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(47/*null.$SLASH*/, "/="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 605)) |
| default: |
| @@ -2611,7 +2678,7 @@ |
| while (true) { |
| next = this.advance(); |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| case 10/*null.$LF*/: |
| case 13/*null.$CR*/: |
| @@ -2624,9 +2691,10 @@ |
| next = this.advance(); |
| while (true) { |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| return next; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 630)) |
| case 42/*null.$STAR*/: |
| @@ -2634,10 +2702,11 @@ |
| if (next == 47/*null.$SLASH*/) { |
| return this.advance(); |
| } |
| - else if (next == -1) { |
| + else if (next == -1.000000/*-1*/) { |
| return next; |
| } |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 638)) |
| default: |
| @@ -2672,7 +2741,7 @@ |
| this.appendByteStringToken(97/*null.$a*/, this.asciiString(start)); |
| } |
| else { |
| - this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1)); |
| + this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1.000000/*-1*/)); |
| } |
| return next; |
| } |
| @@ -2682,7 +2751,7 @@ |
| next = this.nextByte(); |
| } |
| while (next > 127) |
| - var string = this.utf8String(nonAsciiStart, -1).toString(); |
| + var string = this.utf8String(nonAsciiStart, -1.000000/*-1*/).toString(); |
| isAscii = false; |
| this.addToCharOffset(string.length); |
| return next; |
| @@ -2709,7 +2778,7 @@ |
| return this.tokenizeMultiLineString(q, start, raw); |
| } |
| else { |
| - this.appendByteStringToken(q, this.utf8String(start, -1)); |
| + this.appendByteStringToken(q, this.utf8String(start, -1.000000/*-1*/)); |
| return next; |
| } |
| } |
| @@ -2721,14 +2790,14 @@ |
| } |
| } |
| AbstractScanner.prototype.tokenizeSingleLineString = function(next, q1, start) { |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| } |
| else if (next == 92/*null.$BACKSLASH*/) { |
| next = this.advance(); |
| - if (next == -1) { |
| + if (next == -1.000000/*-1*/) { |
| $throw(new MalformedInputException(this.get$charOffset())); |
| } |
| } |
| @@ -2741,7 +2810,7 @@ |
| } |
| AbstractScanner.prototype.tokenizeSingleLineRawString = function(next, q1, start) { |
| next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| @@ -2755,7 +2824,7 @@ |
| } |
| AbstractScanner.prototype.tokenizeMultiLineString = function(q, start, raw) { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q) { |
| next = this.advance(); |
| if (next == q) { |
| @@ -2775,7 +2844,7 @@ |
| $inherits(AbstractScanner$S, AbstractScanner); |
| AbstractScanner$S.prototype.tokenize = function() { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| next = this.bigSwitch(next); |
| } |
| return this.firstToken(); |
| @@ -2790,138 +2859,169 @@ |
| this.appendWhiteSpace(next); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 62)) |
| case 60/*null.$LT*/: |
| return this.tokenizeLessThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 65)) |
| case 62/*null.$GT*/: |
| return this.tokenizeGreaterThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 68)) |
| case 61/*null.$EQ*/: |
| return this.tokenizeEquals(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 71)) |
| case 33/*null.$BANG*/: |
| return this.tokenizeExclamation(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 74)) |
| case 43/*null.$PLUS*/: |
| return this.tokenizePlus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 77)) |
| case 45/*null.$MINUS*/: |
| return this.tokenizeMinus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 80)) |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiply(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 83)) |
| case 37/*null.$PERCENT*/: |
| return this.tokenizePercent(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 86)) |
| case 38/*null.$AMPERSAND*/: |
| return this.tokenizeAmpersand(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 89)) |
| case 124/*null.$BAR*/: |
| return this.tokenizeBar(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 92)) |
| case 94/*null.$CARET*/: |
| return this.tokenizeCaret(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 95)) |
| case 91/*null.$LBRACKET*/: |
| return this.tokenizeOpenBracket(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 98)) |
| case 126/*null.$TILDE*/: |
| return this.tokenizeTilde(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 101)) |
| case 92/*null.$BACKSLASH*/: |
| this.appendStringToken(next, "\\"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 105)) |
| case 35/*null.$HASH*/: |
| return this.tokenizeTag(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 108)) |
| case 40/*null.$LPAREN*/: |
| this.appendStringToken(next, "("); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 112)) |
| case 41/*null.$RPAREN*/: |
| this.appendStringToken(next, ")"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 116)) |
| case 44/*null.$COMMA*/: |
| this.appendStringToken(next, ","); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 120)) |
| case 58/*null.$COLON*/: |
| this.appendStringToken(next, ":"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 124)) |
| case 59/*null.$SEMICOLON*/: |
| this.appendStringToken(next, ";"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 128)) |
| case 63/*null.$QUESTION*/: |
| this.appendStringToken(next, "?"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 132)) |
| case 93/*null.$RBRACKET*/: |
| this.appendStringToken(next, "]"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 136)) |
| case 96/*null.$BACKPING*/: |
| this.appendStringToken(next, "`"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 140)) |
| case 123/*null.$LBRACE*/: |
| this.appendStringToken(next, "{"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 144)) |
| case 125/*null.$RBRACE*/: |
| this.appendStringToken(next, "}"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 148)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSlashOrComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 151)) |
| case 64/*null.$AT*/: |
| return this.tokenizeRawString(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 154)) |
| case 34/*null.$DQ*/: |
| case 39/*null.$SQ*/: |
| return this.tokenizeString(next, this.get$byteOffset(), false); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 158)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeDotOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 161)) |
| case 48/*null.$0*/: |
| return this.tokenizeHexOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 164)) |
| case 49/*null.$1*/: |
| case 50/*null.$2*/: |
| @@ -2934,6 +3034,7 @@ |
| case 57/*null.$9*/: |
| return this.tokenizeNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 175)) |
| case 36/*null.$DOLLAR*/: |
| case 65/*null.$A*/: |
| @@ -2991,11 +3092,12 @@ |
| case 122/*null.$z*/: |
| return this.tokenizeIdentifier(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 231)) |
| default: |
| - if (next == -1) { |
| - return -1; |
| + if (next == -1.000000/*-1*/) { |
| + return -1.000000/*-1*/; |
| } |
| if (next < 0x1f) { |
| $throw(this.get$charOffset()); |
| @@ -3048,11 +3150,13 @@ |
| this.appendStringToken(124/*null.$BAR*/, "||"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 292)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(124/*null.$BAR*/, "|="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 295)) |
| default: |
| @@ -3068,11 +3172,13 @@ |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&&"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 308)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 311)) |
| default: |
| @@ -3094,11 +3200,13 @@ |
| this.appendStringToken(45/*null.$MINUS*/, "--"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 334)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(45/*null.$MINUS*/, "-="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 337)) |
| default: |
| @@ -3114,11 +3222,13 @@ |
| this.appendStringToken(43/*null.$PLUS*/, "++"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 350)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(43/*null.$PLUS*/, "+="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 353)) |
| default: |
| @@ -3150,6 +3260,7 @@ |
| this.appendStringToken(62/*null.$GT*/, ">="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 386)) |
| case 62/*null.$GT*/: |
| @@ -3159,10 +3270,12 @@ |
| this.appendStringToken(62/*null.$GT*/, ">>="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 392)) |
| case 62/*null.$GT*/: |
| return this.select(61/*null.$EQ*/, ">>>=", ">>>"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 394)) |
| default: |
| @@ -3170,6 +3283,7 @@ |
| return next; |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 389)) |
| default: |
| @@ -3185,10 +3299,12 @@ |
| this.appendStringToken(60/*null.$LT*/, "<="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 411)) |
| case 60/*null.$LT*/: |
| return this.select(61/*null.$EQ*/, "<<=", "<<"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 413)) |
| default: |
| @@ -3214,10 +3330,12 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 435)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeFractionPart(this.advance(), start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 438)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -3225,6 +3343,7 @@ |
| case 68/*null.$D*/: |
| return this.tokenizeFractionPart(next, start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 444)) |
| default: |
| @@ -3273,6 +3392,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 491)) |
| default: |
| @@ -3303,10 +3423,12 @@ |
| { |
| return this.tokenizeFractionPart(next, start); |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 516)) |
| case 46/*null.$PERIOD*/: |
| return this.select(46/*null.$PERIOD*/, "...", ".."); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 521)) |
| default: |
| @@ -3332,6 +3454,7 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 543)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -3339,6 +3462,7 @@ |
| next = this.tokenizeExponent(this.advance()); |
| done = true; |
| continue LOOP; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 549)) |
| default: |
| @@ -3374,6 +3498,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 582)) |
| default: |
| @@ -3392,15 +3517,18 @@ |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 598)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSingleLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 601)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(47/*null.$SLASH*/, "/="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 605)) |
| default: |
| @@ -3413,7 +3541,7 @@ |
| while (true) { |
| next = this.advance(); |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| case 10/*null.$LF*/: |
| case 13/*null.$CR*/: |
| @@ -3426,9 +3554,10 @@ |
| next = this.advance(); |
| while (true) { |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| return next; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 630)) |
| case 42/*null.$STAR*/: |
| @@ -3436,10 +3565,11 @@ |
| if (next == 47/*null.$SLASH*/) { |
| return this.advance(); |
| } |
| - else if (next == -1) { |
| + else if (next == -1.000000/*-1*/) { |
| return next; |
| } |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 638)) |
| default: |
| @@ -3474,7 +3604,7 @@ |
| this.appendByteStringToken(97/*null.$a*/, this.asciiString(start)); |
| } |
| else { |
| - this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1)); |
| + this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1.000000/*-1*/)); |
| } |
| return next; |
| } |
| @@ -3484,7 +3614,7 @@ |
| next = this.nextByte(); |
| } |
| while (next > 127) |
| - var string = this.utf8String(nonAsciiStart, -1).toString(); |
| + var string = this.utf8String(nonAsciiStart, -1.000000/*-1*/).toString(); |
| isAscii = false; |
| this.addToCharOffset(string.length); |
| return next; |
| @@ -3511,7 +3641,7 @@ |
| return this.tokenizeMultiLineString(q, start, raw); |
| } |
| else { |
| - this.appendByteStringToken(q, this.utf8String(start, -1)); |
| + this.appendByteStringToken(q, this.utf8String(start, -1.000000/*-1*/)); |
| return next; |
| } |
| } |
| @@ -3523,14 +3653,14 @@ |
| } |
| } |
| AbstractScanner$S.prototype.tokenizeSingleLineString = function(next, q1, start) { |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| } |
| else if (next == 92/*null.$BACKSLASH*/) { |
| next = this.advance(); |
| - if (next == -1) { |
| + if (next == -1.000000/*-1*/) { |
| $throw(new MalformedInputException(this.get$charOffset())); |
| } |
| } |
| @@ -3543,7 +3673,7 @@ |
| } |
| AbstractScanner$S.prototype.tokenizeSingleLineRawString = function(next, q1, start) { |
| next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| @@ -3557,7 +3687,7 @@ |
| } |
| AbstractScanner$S.prototype.tokenizeMultiLineString = function(q, start, raw) { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q) { |
| next = this.advance(); |
| if (next == q) { |
| @@ -3576,43 +3706,47 @@ |
| function MalformedInputException(ignored) { |
| // Initializers done |
| } |
| -// ********** Code for Parser ************** |
| -function Parser(listener) { |
| +// ********** Code for scanner_Parser ************** |
| +function scanner_Parser(listener) { |
| this.listener = listener; |
| // Initializers done |
| } |
| -Parser.prototype.next = function(token) { |
| +scanner_Parser.prototype.next = function(token) { |
| return this.checkEof(token.next); |
| } |
| -Parser.prototype.checkEof = function(token) { |
| +scanner_Parser.prototype.checkEof = function(token) { |
| if (token == null) { |
| this.listener.unexpectedEof(); |
| $throw("Unexpected EOF"); |
| } |
| return token; |
| } |
| -Parser.prototype.parseUnit = function(token) { |
| +scanner_Parser.prototype.parseUnit = function(token) { |
| while (token != null) { |
| switch (token.get$value()) { |
| - case const$305/*Keyword.INTERFACE*/: |
| + case const$297/*Keyword.INTERFACE*/: |
| token = this.parseInterface(token); |
| break; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 28)) |
| - case const$293/*Keyword.CLASS*/: |
| + case const$285/*Keyword.CLASS*/: |
| token = this.parseClass(token); |
| break; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 31)) |
| - case const$321/*Keyword.TYPEDEF*/: |
| + case const$313/*Keyword.TYPEDEF*/: |
| token = this.parseNamedFunctionAlias(token); |
| break; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 34)) |
| case "#": |
| token = this.parseLibraryTags(token); |
| break; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 37)) |
| default: |
| @@ -3622,7 +3756,7 @@ |
| } |
| } |
| } |
| -Parser.prototype.parseInterface = function(token) { |
| +scanner_Parser.prototype.parseInterface = function(token) { |
| this.listener.beginInterface(token); |
| token = this.parseIdentifier(this.next(token)); |
| token = this.parseTypeVariablesOpt(token); |
| @@ -3630,12 +3764,12 @@ |
| token = this.parseFactoryClauseOpt(token); |
| return this.parseInterfaceBody(token); |
| } |
| -Parser.prototype.parseInterfaceBody = function(token) { |
| +scanner_Parser.prototype.parseInterfaceBody = function(token) { |
| token = this.skipBlock(token); |
| this.listener.endInterface(token); |
| return token.next; |
| } |
| -Parser.prototype.parseNamedFunctionAlias = function(token) { |
| +scanner_Parser.prototype.parseNamedFunctionAlias = function(token) { |
| this.listener.beginFunctionTypeAlias(token); |
| token = this.parseReturnTypeOpt(this.next(token)); |
| token = this.parseIdentifier(token); |
| @@ -3644,15 +3778,15 @@ |
| this.listener.endFunctionTypeAlias(token); |
| return this.expect(";", token); |
| } |
| -Parser.prototype.parseReturnTypeOpt = function(token) { |
| - if ($eq(token.get$value(), const$285/*Keyword.VOID*/)) { |
| +scanner_Parser.prototype.parseReturnTypeOpt = function(token) { |
| + if ($eq(token.get$value(), const$277/*Keyword.VOID*/)) { |
| return this.next(token); |
| } |
| else { |
| return this.parseTypeOpt(token); |
| } |
| } |
| -Parser.prototype.parseParameters = function(token) { |
| +scanner_Parser.prototype.parseParameters = function(token) { |
| this.expect("(", token); |
| if (this.optional(")", this.next(token))) { |
| return this.next(this.next(token)); |
| @@ -3664,13 +3798,14 @@ |
| while (this.optional(",", token)) |
| return this.expect(")", token); |
| } |
| -Parser.prototype.parseTypeOpt = function(token) { |
| +scanner_Parser.prototype.parseTypeOpt = function(token) { |
| switch (true) { |
| case this.optional("<", this.next(token)): |
| case this.optional(".", this.next(token)): |
| case this.isIdentifier(this.next(token)): |
| return this.parseType(token); |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 96)) |
| default: |
| @@ -3678,15 +3813,17 @@ |
| } |
| } |
| -Parser.prototype.isIdentifier = function(token) { |
| +scanner_Parser.prototype.isIdentifier = function(token) { |
| switch (token.kind) { |
| case 97/*null.$a*/: |
| return true; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 105)) |
| case 107/*null.$k*/: |
| return token.get$value().isPseudo; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 107)) |
| default: |
| @@ -3694,8 +3831,8 @@ |
| } |
| } |
| -Parser.prototype.parseSupertypesClauseOpt = function(token) { |
| - if (this.optional(const$295/*Keyword.EXTENDS*/, token)) { |
| +scanner_Parser.prototype.parseSupertypesClauseOpt = function(token) { |
| + if (this.optional(const$287/*Keyword.EXTENDS*/, token)) { |
| do { |
| token = this.parseType(this.next(token)); |
| } |
| @@ -3703,13 +3840,13 @@ |
| } |
| return token; |
| } |
| -Parser.prototype.parseFactoryClauseOpt = function(token) { |
| - if (this.optional(const$297/*Keyword.FACTORY*/, token)) { |
| +scanner_Parser.prototype.parseFactoryClauseOpt = function(token) { |
| + if (this.optional(const$289/*Keyword.FACTORY*/, token)) { |
| return this.parseType(this.next(token)); |
| } |
| return token; |
| } |
| -Parser.prototype.skipBlock = function(token) { |
| +scanner_Parser.prototype.skipBlock = function(token) { |
| if (!this.optional("{", token)) return this.listener.expectedBlock(token); |
| token = this.next(token); |
| var nesting = 1; |
| @@ -3719,6 +3856,7 @@ |
| nesting++; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 137)) |
| case 125/*null.$RBRACE*/: |
| @@ -3734,7 +3872,7 @@ |
| while (token != null) |
| $throw("Internal error: unreachable code"); |
| } |
| -Parser.prototype.parseClass = function(token) { |
| +scanner_Parser.prototype.parseClass = function(token) { |
| this.listener.beginClass(token); |
| token = this.parseIdentifier(this.next(token)); |
| token = this.parseTypeVariablesOpt(token); |
| @@ -3743,18 +3881,19 @@ |
| token = this.parseNativeClassClauseOpt(token); |
| return this.parseClassBody(token); |
| } |
| -Parser.prototype.parseNativeClassClauseOpt = function(token) { |
| - if (this.optional(const$309/*Keyword.NATIVE*/, token)) { |
| +scanner_Parser.prototype.parseNativeClassClauseOpt = function(token) { |
| + if (this.optional(const$301/*Keyword.NATIVE*/, token)) { |
| return this.parseString(this.next(token)); |
| } |
| return token; |
| } |
| -Parser.prototype.parseString = function(token) { |
| +scanner_Parser.prototype.parseString = function(token) { |
| switch (token.kind) { |
| case 39/*null.$SQ*/: |
| case 34/*null.$DQ*/: |
| return this.next(token); |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 171)) |
| default: |
| @@ -3762,7 +3901,7 @@ |
| } |
| } |
| -Parser.prototype.parseIdentifier = function(token) { |
| +scanner_Parser.prototype.parseIdentifier = function(token) { |
| if (this.isIdentifier(token)) { |
| this.listener.identifier(token); |
| } |
| @@ -3771,7 +3910,7 @@ |
| } |
| return this.next(token); |
| } |
| -Parser.prototype.parseTypeVariablesOpt = function(token) { |
| +scanner_Parser.prototype.parseTypeVariablesOpt = function(token) { |
| if (!this.optional("<", token)) { |
| return token; |
| } |
| @@ -3782,29 +3921,29 @@ |
| while (this.optional(",", token)) |
| return this.expect(">", token); |
| } |
| -Parser.prototype.expect = function(string, token) { |
| +scanner_Parser.prototype.expect = function(string, token) { |
| if (string != token.get$value()) { |
| return this.listener.expected(string, token); |
| } |
| return token.next; |
| } |
| -Parser.prototype.parseTypeVariable = function(token) { |
| +scanner_Parser.prototype.parseTypeVariable = function(token) { |
| this.listener.beginTypeVariable(token); |
| token = this.parseIdentifier(token); |
| token = this.parseSuperclassClauseOpt(token); |
| this.listener.endTypeVariable(token); |
| return token; |
| } |
| -Parser.prototype.optional = function(value, token) { |
| +scanner_Parser.prototype.optional = function(value, token) { |
| return $eq(value, token.get$value()); |
| } |
| -Parser.prototype.parseSuperclassClauseOpt = function(token) { |
| - if (this.optional(const$295/*Keyword.EXTENDS*/, token)) { |
| +scanner_Parser.prototype.parseSuperclassClauseOpt = function(token) { |
| + if (this.optional(const$287/*Keyword.EXTENDS*/, token)) { |
| return this.parseType(this.next(token)); |
| } |
| return token; |
| } |
| -Parser.prototype.parseType = function(token) { |
| +scanner_Parser.prototype.parseType = function(token) { |
| if (this.isIdentifier(token)) { |
| token = this.parseIdentifier(token); |
| } |
| @@ -3813,7 +3952,7 @@ |
| } |
| return this.parseTypeArgumentsOpt(token); |
| } |
| -Parser.prototype.parseTypeArgumentsOpt = function(token) { |
| +scanner_Parser.prototype.parseTypeArgumentsOpt = function(token) { |
| if (this.optional("<", token)) { |
| this.listener.beginTypeArguments(this.next(token)); |
| do { |
| @@ -3824,8 +3963,8 @@ |
| } |
| return token; |
| } |
| -Parser.prototype.parseImplementsOpt = function(token) { |
| - if (this.optional(const$301/*Keyword.IMPLEMENTS*/, token)) { |
| +scanner_Parser.prototype.parseImplementsOpt = function(token) { |
| + if (this.optional(const$293/*Keyword.IMPLEMENTS*/, token)) { |
| do { |
| token = this.parseType(this.next(token)); |
| } |
| @@ -3833,12 +3972,12 @@ |
| } |
| return token; |
| } |
| -Parser.prototype.parseClassBody = function(token) { |
| +scanner_Parser.prototype.parseClassBody = function(token) { |
| token = this.skipBlock(token); |
| this.listener.endClass(token); |
| return token.next; |
| } |
| -Parser.prototype.parseTopLevelMember = function(token) { |
| +scanner_Parser.prototype.parseTopLevelMember = function(token) { |
| var start = token; |
| this.listener.beginTopLevelMember(token); |
| var previous = token; |
| @@ -3851,6 +3990,7 @@ |
| case 61/*null.$EQ*/: |
| break LOOP; |
| + $throw(new FallThroughError("./leg/scanner/parser.dart", 266)) |
| default: |
| @@ -3878,7 +4018,7 @@ |
| this.listener.endTopLevelMember(token); |
| return token.next; |
| } |
| -Parser.prototype.parseLibraryTags = function(token) { |
| +scanner_Parser.prototype.parseLibraryTags = function(token) { |
| this.listener.beginLibraryTag(token); |
| token = this.parseIdentifier(this.next(token)); |
| token = this.expect("(", token); |
| @@ -3946,7 +4086,7 @@ |
| } |
| Listener.prototype.identifier = function(token) { |
| - this.previousIdentifier = new Identifier(token); |
| + this.previousIdentifier = new tree_Identifier(token); |
| } |
| Listener.prototype.beginTypeArguments = function(token) { |
| @@ -4027,7 +4167,7 @@ |
| return this.charAt(this.byteOffset + 1); |
| } |
| StringScanner.prototype.charAt = function(index) { |
| - return (this.string.length > index) ? this.string.charCodeAt(index) : -1; |
| + return (this.string.length > index) ? this.string.charCodeAt(index) : -1.000000/*-1*/; |
| } |
| StringScanner.prototype.asciiString = function(start) { |
| return this.string.substring(start, this.byteOffset); |
| @@ -4055,8 +4195,8 @@ |
| } |
| Keyword.computeKeywordMap = function() { |
| var result = new LinkedHashMapImplementation$String$Keyword(); |
| - for (var $i = 0;$i < const$323/*Keyword.values*/.length; $i++) { |
| - var keyword = const$323/*Keyword.values*/.$index($i); |
| + for (var $i = 0;$i < const$315/*Keyword.values*/.length; $i++) { |
| + var keyword = const$315/*Keyword.values*/.$index($i); |
| result.$setindex(keyword.syntax, keyword); |
| } |
| return result; |
| @@ -4065,10 +4205,10 @@ |
| function KeywordState() {} |
| KeywordState.get$KEYWORD_STATE = function() { |
| if (KeywordState._KEYWORD_STATE == null) { |
| - var strings = new ListFactory$String(const$323/*Keyword.values*/.length); |
| + var strings = new ListFactory$String(const$315/*Keyword.values*/.length); |
| for (var i = 0; |
| - i < const$323/*Keyword.values*/.length; i++) { |
| - strings.$setindex(i, const$323/*Keyword.values*/.$index(i).syntax); |
| + i < const$315/*Keyword.values*/.length; i++) { |
| + strings.$setindex(i, const$315/*Keyword.values*/.$index(i).syntax); |
| } |
| strings.sort((function (a, b) { |
| return a.compareTo(b); |
| @@ -4081,13 +4221,13 @@ |
| KeywordState.computeKeywordStateTable = function(start, strings, offset, length) { |
| var result = new ListFactory$KeywordState(26); |
| var chunk = 0; |
| - var chunkStart = -1; |
| + var chunkStart = -1.000000/*-1*/; |
| for (var i = offset; |
| i < offset + length; i++) { |
| if (strings.$index(i).length > start) { |
| var c = strings.$index(i).charCodeAt(start); |
| if (chunk != c) { |
| - if (chunkStart != -1) { |
| + if (chunkStart != -1.000000/*-1*/) { |
| result.$setindex(chunk - 97/*null.$a*/, KeywordState.computeKeywordStateTable(start + 1, strings, chunkStart, i - chunkStart)); |
| } |
| chunkStart = i; |
| @@ -4095,7 +4235,7 @@ |
| } |
| } |
| } |
| - if (chunkStart != -1) { |
| + if (chunkStart != -1.000000/*-1*/) { |
| result.$setindex(chunk - 97/*null.$a*/, KeywordState.computeKeywordStateTable(start + 1, strings, chunkStart, offset + length - chunkStart)); |
| } |
| else { |
| @@ -4148,22 +4288,22 @@ |
| LeafKeywordState.prototype.toString = function() { |
| return this.keyword.syntax; |
| } |
| -// ********** Code for Token ************** |
| -function Token(kind, charOffset) { |
| +// ********** Code for scanner_implementation_Token ************** |
| +function scanner_implementation_Token(kind, charOffset) { |
| this.kind = kind; |
| this.charOffset = charOffset; |
| // Initializers done |
| } |
| -Token.prototype.toString = function() { |
| +scanner_implementation_Token.prototype.toString = function() { |
| return Strings.String$fromCharCodes$factory([this.kind]); |
| } |
| // ********** Code for KeywordToken ************** |
| function KeywordToken(value, charOffset) { |
| this.value = value; |
| - Token.call(this, 107/*null.$k*/, charOffset); |
| + scanner_implementation_Token.call(this, 107/*null.$k*/, charOffset); |
| // Initializers done |
| } |
| -$inherits(KeywordToken, Token); |
| +$inherits(KeywordToken, scanner_implementation_Token); |
| KeywordToken.prototype.get$value = function() { return this.value; }; |
| KeywordToken.prototype.toString = function() { |
| return this.value.syntax; |
| @@ -4171,20 +4311,20 @@ |
| // ********** Code for StringToken ************** |
| function StringToken(kind, value, charOffset) { |
| this.value = value; |
| - Token.call(this, kind, charOffset); |
| + scanner_implementation_Token.call(this, kind, charOffset); |
| // Initializers done |
| } |
| -$inherits(StringToken, Token); |
| +$inherits(StringToken, scanner_implementation_Token); |
| StringToken.prototype.get$value = function() { return this.value; }; |
| StringToken.prototype.toString = function() { |
| return this.value; |
| } |
| // ********** Code for ArrayBasedScanner ************** |
| function ArrayBasedScanner() { |
| - this.charOffset = -1; |
| - this.tokenStart = -1; |
| - this.byteOffset = -1; |
| - this.tokens = new Token(0, -1); |
| + this.charOffset = -1.000000/*-1*/; |
| + this.tokenStart = -1.000000/*-1*/; |
| + this.byteOffset = -1.000000/*-1*/; |
| + this.tokens = new scanner_implementation_Token(0, -1.000000/*-1*/); |
| // Initializers done |
| this.tail = this.tokens; |
| } |
| @@ -4231,17 +4371,17 @@ |
| } |
| // ********** Code for ArrayBasedScanner$String ************** |
| function ArrayBasedScanner$String() { |
| - this.charOffset = -1; |
| - this.tokenStart = -1; |
| - this.byteOffset = -1; |
| - this.tokens = new Token(0, -1); |
| + this.charOffset = -1.000000/*-1*/; |
| + this.tokenStart = -1.000000/*-1*/; |
| + this.byteOffset = -1.000000/*-1*/; |
| + this.tokens = new scanner_implementation_Token(0, -1.000000/*-1*/); |
| // Initializers done |
| this.tail = this.tokens; |
| } |
| $inherits(ArrayBasedScanner$String, ArrayBasedScanner); |
| ArrayBasedScanner$String.prototype.tokenize = function() { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| next = this.bigSwitch(next); |
| } |
| return this.firstToken(); |
| @@ -4256,138 +4396,169 @@ |
| this.appendWhiteSpace(next); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 62)) |
| case 60/*null.$LT*/: |
| return this.tokenizeLessThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 65)) |
| case 62/*null.$GT*/: |
| return this.tokenizeGreaterThan(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 68)) |
| case 61/*null.$EQ*/: |
| return this.tokenizeEquals(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 71)) |
| case 33/*null.$BANG*/: |
| return this.tokenizeExclamation(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 74)) |
| case 43/*null.$PLUS*/: |
| return this.tokenizePlus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 77)) |
| case 45/*null.$MINUS*/: |
| return this.tokenizeMinus(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 80)) |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiply(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 83)) |
| case 37/*null.$PERCENT*/: |
| return this.tokenizePercent(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 86)) |
| case 38/*null.$AMPERSAND*/: |
| return this.tokenizeAmpersand(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 89)) |
| case 124/*null.$BAR*/: |
| return this.tokenizeBar(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 92)) |
| case 94/*null.$CARET*/: |
| return this.tokenizeCaret(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 95)) |
| case 91/*null.$LBRACKET*/: |
| return this.tokenizeOpenBracket(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 98)) |
| case 126/*null.$TILDE*/: |
| return this.tokenizeTilde(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 101)) |
| case 92/*null.$BACKSLASH*/: |
| this.appendStringToken(next, "\\"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 105)) |
| case 35/*null.$HASH*/: |
| return this.tokenizeTag(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 108)) |
| case 40/*null.$LPAREN*/: |
| this.appendStringToken(next, "("); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 112)) |
| case 41/*null.$RPAREN*/: |
| this.appendStringToken(next, ")"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 116)) |
| case 44/*null.$COMMA*/: |
| this.appendStringToken(next, ","); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 120)) |
| case 58/*null.$COLON*/: |
| this.appendStringToken(next, ":"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 124)) |
| case 59/*null.$SEMICOLON*/: |
| this.appendStringToken(next, ";"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 128)) |
| case 63/*null.$QUESTION*/: |
| this.appendStringToken(next, "?"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 132)) |
| case 93/*null.$RBRACKET*/: |
| this.appendStringToken(next, "]"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 136)) |
| case 96/*null.$BACKPING*/: |
| this.appendStringToken(next, "`"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 140)) |
| case 123/*null.$LBRACE*/: |
| this.appendStringToken(next, "{"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 144)) |
| case 125/*null.$RBRACE*/: |
| this.appendStringToken(next, "}"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 148)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSlashOrComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 151)) |
| case 64/*null.$AT*/: |
| return this.tokenizeRawString(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 154)) |
| case 34/*null.$DQ*/: |
| case 39/*null.$SQ*/: |
| return this.tokenizeString(next, this.byteOffset, false); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 158)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeDotOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 161)) |
| case 48/*null.$0*/: |
| return this.tokenizeHexOrNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 164)) |
| case 49/*null.$1*/: |
| case 50/*null.$2*/: |
| @@ -4400,6 +4571,7 @@ |
| case 57/*null.$9*/: |
| return this.tokenizeNumber(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 175)) |
| case 36/*null.$DOLLAR*/: |
| case 65/*null.$A*/: |
| @@ -4457,11 +4629,12 @@ |
| case 122/*null.$z*/: |
| return this.tokenizeIdentifier(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 231)) |
| default: |
| - if (next == -1) { |
| - return -1; |
| + if (next == -1.000000/*-1*/) { |
| + return -1.000000/*-1*/; |
| } |
| if (next < 0x1f) { |
| $throw(this.charOffset); |
| @@ -4514,11 +4687,13 @@ |
| this.appendStringToken(124/*null.$BAR*/, "||"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 292)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(124/*null.$BAR*/, "|="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 295)) |
| default: |
| @@ -4534,11 +4709,13 @@ |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&&"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 308)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(38/*null.$AMPERSAND*/, "&="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 311)) |
| default: |
| @@ -4560,11 +4737,13 @@ |
| this.appendStringToken(45/*null.$MINUS*/, "--"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 334)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(45/*null.$MINUS*/, "-="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 337)) |
| default: |
| @@ -4580,11 +4759,13 @@ |
| this.appendStringToken(43/*null.$PLUS*/, "++"); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 350)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(43/*null.$PLUS*/, "+="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 353)) |
| default: |
| @@ -4616,6 +4797,7 @@ |
| this.appendStringToken(62/*null.$GT*/, ">="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 386)) |
| case 62/*null.$GT*/: |
| @@ -4625,10 +4807,12 @@ |
| this.appendStringToken(62/*null.$GT*/, ">>="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 392)) |
| case 62/*null.$GT*/: |
| return this.select(61/*null.$EQ*/, ">>>=", ">>>"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 394)) |
| default: |
| @@ -4636,6 +4820,7 @@ |
| return next; |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 389)) |
| default: |
| @@ -4651,10 +4836,12 @@ |
| this.appendStringToken(60/*null.$LT*/, "<="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 411)) |
| case 60/*null.$LT*/: |
| return this.select(61/*null.$EQ*/, "<<=", "<<"); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 413)) |
| default: |
| @@ -4680,10 +4867,12 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 435)) |
| case 46/*null.$PERIOD*/: |
| return this.tokenizeFractionPart(this.advance(), start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 438)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -4691,6 +4880,7 @@ |
| case 68/*null.$D*/: |
| return this.tokenizeFractionPart(next, start); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 444)) |
| default: |
| @@ -4739,6 +4929,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 491)) |
| default: |
| @@ -4769,10 +4960,12 @@ |
| { |
| return this.tokenizeFractionPart(next, start); |
| } |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 516)) |
| case 46/*null.$PERIOD*/: |
| return this.select(46/*null.$PERIOD*/, "...", ".."); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 521)) |
| default: |
| @@ -4798,6 +4991,7 @@ |
| case 57/*null.$9*/: |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 543)) |
| case 101/*null.$e*/: |
| case 69/*null.$E*/: |
| @@ -4805,6 +4999,7 @@ |
| next = this.tokenizeExponent(this.advance()); |
| done = true; |
| continue LOOP; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 549)) |
| default: |
| @@ -4840,6 +5035,7 @@ |
| hasDigits = true; |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 582)) |
| default: |
| @@ -4858,15 +5054,18 @@ |
| case 42/*null.$STAR*/: |
| return this.tokenizeMultiLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 598)) |
| case 47/*null.$SLASH*/: |
| return this.tokenizeSingleLineComment(next); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 601)) |
| case 61/*null.$EQ*/: |
| this.appendStringToken(47/*null.$SLASH*/, "/="); |
| return this.advance(); |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 605)) |
| default: |
| @@ -4879,7 +5078,7 @@ |
| while (true) { |
| next = this.advance(); |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| case 10/*null.$LF*/: |
| case 13/*null.$CR*/: |
| @@ -4892,9 +5091,10 @@ |
| next = this.advance(); |
| while (true) { |
| switch (next) { |
| - case -1: |
| + case -1.000000/*-1*/: |
| return next; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 630)) |
| case 42/*null.$STAR*/: |
| @@ -4902,10 +5102,11 @@ |
| if (next == 47/*null.$SLASH*/) { |
| return this.advance(); |
| } |
| - else if (next == -1) { |
| + else if (next == -1.000000/*-1*/) { |
| return next; |
| } |
| break; |
| + $throw(new FallThroughError("./leg/scanner/scanner.dart", 638)) |
| default: |
| @@ -4940,7 +5141,7 @@ |
| this.appendByteStringToken(97/*null.$a*/, this.asciiString(start)); |
| } |
| else { |
| - this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1)); |
| + this.appendByteStringToken(97/*null.$a*/, this.utf8String(start, -1.000000/*-1*/)); |
| } |
| return next; |
| } |
| @@ -4950,7 +5151,7 @@ |
| next = this.nextByte(); |
| } |
| while (next > 127) |
| - var string = this.utf8String(nonAsciiStart, -1).toString(); |
| + var string = this.utf8String(nonAsciiStart, -1.000000/*-1*/).toString(); |
| isAscii = false; |
| this.addToCharOffset(string.length); |
| return next; |
| @@ -4977,7 +5178,7 @@ |
| return this.tokenizeMultiLineString(q, start, raw); |
| } |
| else { |
| - this.appendByteStringToken(q, this.utf8String(start, -1)); |
| + this.appendByteStringToken(q, this.utf8String(start, -1.000000/*-1*/)); |
| return next; |
| } |
| } |
| @@ -4989,14 +5190,14 @@ |
| } |
| } |
| ArrayBasedScanner$String.prototype.tokenizeSingleLineString = function(next, q1, start) { |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| } |
| else if (next == 92/*null.$BACKSLASH*/) { |
| next = this.advance(); |
| - if (next == -1) { |
| + if (next == -1.000000/*-1*/) { |
| $throw(new MalformedInputException(this.charOffset)); |
| } |
| } |
| @@ -5009,7 +5210,7 @@ |
| } |
| ArrayBasedScanner$String.prototype.tokenizeSingleLineRawString = function(next, q1, start) { |
| next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q1) { |
| this.appendByteStringToken(q1, this.utf8String(start, 0)); |
| return this.advance(); |
| @@ -5023,7 +5224,7 @@ |
| } |
| ArrayBasedScanner$String.prototype.tokenizeMultiLineString = function(q, start, raw) { |
| var next = this.advance(); |
| - while (next != -1) { |
| + while (next != -1.000000/*-1*/) { |
| if (next == q) { |
| next = this.advance(); |
| if (next == q) { |
| @@ -5091,20 +5292,20 @@ |
| TokenString.prototype.toString = function() { |
| return this.text; |
| } |
| -// ********** Code for Node ************** |
| -function Node() {} |
| -Node.prototype.hashCode = function() { |
| +// ********** Code for tree_Node ************** |
| +function tree_Node() {} |
| +tree_Node.prototype.hashCode = function() { |
| return this._hashCode; |
| } |
| -Node.prototype.toString = function() { |
| +tree_Node.prototype.toString = function() { |
| return this.get$debugString(); |
| } |
| -// ********** Code for Expression ************** |
| -function Expression() {} |
| -$inherits(Expression, Node); |
| -// ********** Code for Statement ************** |
| -function Statement() {} |
| -$inherits(Statement, Node); |
| +// ********** Code for tree_Expression ************** |
| +function tree_Expression() {} |
| +$inherits(tree_Expression, tree_Node); |
| +// ********** Code for tree_Statement ************** |
| +function tree_Statement() {} |
| +$inherits(tree_Statement, tree_Node); |
| // ********** Code for Invocation ************** |
| function Invocation(receiver, selector, argumentsNode) { |
| this.debugString = "invocation" |
| @@ -5113,7 +5314,7 @@ |
| this.argumentsNode = argumentsNode; |
| // Initializers done |
| } |
| -$inherits(Invocation, Expression); |
| +$inherits(Invocation, tree_Expression); |
| Invocation.prototype.get$arguments = function() { |
| return this.argumentsNode.nodes; |
| } |
| @@ -5121,10 +5322,10 @@ |
| Invocation.prototype.accept = function(visitor) { |
| return visitor.visitInvocation(this); |
| } |
| -// ********** Code for NewExpression ************** |
| -function NewExpression() {} |
| -$inherits(NewExpression, Expression); |
| -NewExpression.prototype.get$debugString = function() { return this.debugString; }; |
| +// ********** Code for tree_NewExpression ************** |
| +function tree_NewExpression() {} |
| +$inherits(tree_NewExpression, tree_Expression); |
| +tree_NewExpression.prototype.get$debugString = function() { return this.debugString; }; |
| // ********** Code for NodeList ************** |
| function NodeList(beginToken, nodes, endToken, delimiter) { |
| this.debugString = "node list" |
| @@ -5134,7 +5335,7 @@ |
| this.delimiter = delimiter; |
| // Initializers done |
| } |
| -$inherits(NodeList, Node); |
| +$inherits(NodeList, tree_Node); |
| NodeList.prototype.get$debugString = function() { return this.debugString; }; |
| NodeList.prototype.accept = function(visitor) { |
| return visitor.visitNodeList(this); |
| @@ -5147,7 +5348,7 @@ |
| this.endToken = endToken; |
| // Initializers done |
| } |
| -$inherits(Block, Statement); |
| +$inherits(Block, tree_Statement); |
| Block.prototype.get$debugString = function() { return this.debugString; }; |
| Block.prototype.accept = function(visitor) { |
| return visitor.visitBlock(this); |
| @@ -5161,7 +5362,7 @@ |
| this.returnType = returnType; |
| // Initializers done |
| } |
| -$inherits(FunctionExpression, Expression); |
| +$inherits(FunctionExpression, tree_Expression); |
| FunctionExpression.prototype.get$name = function() { return this.name; }; |
| FunctionExpression.prototype.get$parameters = function() { return this.parameters; }; |
| FunctionExpression.prototype.get$returnType = function() { return this.returnType; }; |
| @@ -5174,7 +5375,7 @@ |
| this.value = value; |
| // Initializers done |
| } |
| -$inherits(Literal, Expression); |
| +$inherits(Literal, tree_Expression); |
| Literal.prototype.get$value = function() { return this.value; }; |
| Literal.prototype.get$debugString = function() { |
| return ("" + this.value + ""); |
| @@ -5182,16 +5383,16 @@ |
| Literal.prototype.accept = function(visitor) { |
| return visitor.visitLiteral(this); |
| } |
| -// ********** Code for Identifier ************** |
| -function Identifier(string) { |
| +// ********** Code for tree_Identifier ************** |
| +function tree_Identifier(string) { |
| this.string = string; |
| // Initializers done |
| } |
| -$inherits(Identifier, Expression); |
| -Identifier.prototype.get$debugString = function() { |
| +$inherits(tree_Identifier, tree_Expression); |
| +tree_Identifier.prototype.get$debugString = function() { |
| return ("" + this.string + ""); |
| } |
| -Identifier.prototype.accept = function(visitor) { |
| +tree_Identifier.prototype.accept = function(visitor) { |
| return visitor.visitIdentifier(this); |
| } |
| // ********** Code for Operator ************** |
| @@ -5199,7 +5400,7 @@ |
| this.string = string; |
| // Initializers done |
| } |
| -$inherits(Operator, Node); |
| +$inherits(Operator, tree_Node); |
| Operator.prototype.get$debugString = function() { |
| return ("" + this.string + ""); |
| } |
| @@ -5212,21 +5413,21 @@ |
| this.expression = expression; |
| // Initializers done |
| } |
| -$inherits(Return, Statement); |
| +$inherits(Return, tree_Statement); |
| Return.prototype.get$debugString = function() { return this.debugString; }; |
| Return.prototype.accept = function(visitor) { |
| return visitor.visitReturn(this); |
| } |
| -// ********** Code for ExpressionStatement ************** |
| -function ExpressionStatement(expression) { |
| +// ********** Code for tree_ExpressionStatement ************** |
| +function tree_ExpressionStatement(expression) { |
| this.expression = expression; |
| // Initializers done |
| } |
| -$inherits(ExpressionStatement, Statement); |
| -ExpressionStatement.prototype.get$debugString = function() { |
| +$inherits(tree_ExpressionStatement, tree_Statement); |
| +tree_ExpressionStatement.prototype.get$debugString = function() { |
| return ("" + this.expression.get$debugString() + ""); |
| } |
| -ExpressionStatement.prototype.accept = function(visitor) { |
| +tree_ExpressionStatement.prototype.accept = function(visitor) { |
| return visitor.visitExpressionStatement(this); |
| } |
| // ********** Code for TypeAnnotation ************** |
| @@ -5234,7 +5435,7 @@ |
| this.typeName = typeName; |
| // Initializers done |
| } |
| -$inherits(TypeAnnotation, Node); |
| +$inherits(TypeAnnotation, tree_Node); |
| TypeAnnotation.prototype.get$debugString = function() { |
| return ("" + this.typeName + ""); |
| } |
| @@ -5899,14 +6100,14 @@ |
| var four = new Literal(4); |
| var plus = ParserStage.newOperator('+'); |
| var sum = new Invocation(three, plus, ParserStage.newArguments([four])); |
| - var print = new ExpressionStatement(new Invocation(null, ParserStage.newIdentifier('print'), ParserStage.newArguments([sum]))); |
| + var print = new tree_ExpressionStatement(new Invocation(null, ParserStage.newIdentifier('print'), ParserStage.newArguments([sum]))); |
| var body = new Block(null, LinkFactory.Link$factory(print), null); |
| var node = new FunctionExpression(ParserStage.newIdentifier('main'), emptyList, body); |
| this.pipeline.universe.define(new Element(new TokenString('main'), node)); |
| } |
| else if ((text == 'foo ( ) { return 3 + 4 ; }') && text2 == 'main ( ) { print ( foo ( ) ) ; }') { |
| var foo = new Invocation(null, ParserStage.newIdentifier('foo'), ParserStage.newArguments([])); |
| - var print = new ExpressionStatement(new Invocation(null, ParserStage.newIdentifier('print'), ParserStage.newArguments([foo]))); |
| + var print = new tree_ExpressionStatement(new Invocation(null, ParserStage.newIdentifier('print'), ParserStage.newArguments([foo]))); |
| var body = new Block(null, LinkFactory.Link$factory(print), null); |
| var node = new FunctionExpression(ParserStage.newIdentifier('main'), emptyList, body); |
| this.pipeline.universe.define(new Element(new TokenString('main'), node)); |
| @@ -5936,7 +6137,7 @@ |
| }) |
| ); |
| var listener = new Listener(); |
| - var parser = new Parser(listener); |
| + var parser = new scanner_Parser(listener); |
| this.pipeline.world.withTiming('[leg] parsing', (function () { |
| return parser.parseUnit(tokens); |
| }) |
| @@ -5949,7 +6150,7 @@ |
| return new NodeList(null, LinkFactory.Link$fromList$factory(expressions), null, null); |
| } |
| ParserStage.newIdentifier = function(text) { |
| - return new Identifier(new TokenString(text)); |
| + return new tree_Identifier(new TokenString(text)); |
| } |
| ParserStage.newOperator = function(text) { |
| return new Operator(new TokenString(text)); |
| @@ -6207,9 +6408,9 @@ |
| FunctionType.prototype.get$returnType = function() { return this.returnType; }; |
| // ********** Code for Types ************** |
| function Types() { |
| - this.VOID = const$133/*const SimpleType(const TokenString('void'))*/ |
| - this.INT = const$135/*const SimpleType(const TokenString('int'))*/ |
| - this.DYNAMIC = const$137/*const SimpleType(const TokenString('Dynamic'))*/ |
| + this.VOID = const$321/*const SimpleType(const TokenString('void'))*/ |
| + this.INT = const$323/*const SimpleType(const TokenString('int'))*/ |
| + this.DYNAMIC = const$325/*const SimpleType(const TokenString('Dynamic'))*/ |
| // Initializers done |
| } |
| Types.prototype.isSubtype = function(r, s) { |
| @@ -6290,7 +6491,7 @@ |
| } |
| leg_Script.prototype.get$text = function() { return this.text; }; |
| // ********** Code for top level ************** |
| -function compile(world) { |
| +function leg_compile(world) { |
| var file = world.readFile(options.dartScript); |
| var script = new leg_Script(file.get$text()); |
| var pipeline = new WorldPipeline(world, script); |
| @@ -6334,7 +6535,7 @@ |
| CodeWriter.prototype.write = function(text) { |
| if (text.length == 0) return; |
| if (this._pendingIndent) this._indent(); |
| - if (text.indexOf('\n', 0) != -1) { |
| + if (text.indexOf('\n', 0) != -1.000000/*-1*/) { |
| var lines = text.split('\n'); |
| for (var i = 0; |
| i < lines.length - 1; i++) { |
| @@ -6397,7 +6598,7 @@ |
| } |
| FileSystem.prototype.dirname = function(path) { |
| var lastSlash = path.lastIndexOf('/', path.length); |
| - if (lastSlash == -1) { |
| + if (lastSlash == -1.000000/*-1*/) { |
| return '.'; |
| } |
| else { |
| @@ -6406,7 +6607,7 @@ |
| } |
| FileSystem.prototype.basename = function(path) { |
| var lastSlash = path.lastIndexOf('/', path.length); |
| - if (lastSlash == -1) { |
| + if (lastSlash == -1.000000/*-1*/) { |
| return path; |
| } |
| else { |
| @@ -6688,7 +6889,7 @@ |
| if (spans != 0) return spans; |
| } |
| if (x.get$span() == null) return 1; |
| - if (y.get$span() == null) return -1; |
| + if (y.get$span() == null) return -1.000000/*-1*/; |
| return x.get$name().compareTo(y.get$name()); |
| } |
| WorldGenerator.prototype.get$_compareMembers = function() { |
| @@ -7223,7 +7424,7 @@ |
| return this.visitValue(node); |
| } |
| MethodGenerator.prototype.visitDietStatement = function(node) { |
| - var parser = new lang_Parser(node.span.file, false, node.span.start); |
| + var parser = new Parser(node.span.file, false, node.span.start); |
| this.visitStatementsInBlock(parser.block()); |
| } |
| MethodGenerator.prototype.visitVariableDefinition = function(node) { |
| @@ -7493,6 +7694,9 @@ |
| i < case_.cases.length; i++) { |
| var expr = case_.cases.$index(i); |
| if (expr == null) { |
| + if (i < case_.cases.length - 1) { |
| + world.error('default clause must be the last case', case_.get$span()); |
| + } |
| this.writer.writeln('default:'); |
| } |
| else { |
| @@ -7506,6 +7710,10 @@ |
| var stmt = $i0.next(); |
| stmt.visit(this); |
| } |
| + if ($ne(case_, node.cases.$index(node.cases.length - 1))) { |
| + var span = case_.statements.$index(case_.statements.length - 1).get$span(); |
| + this.writer.writeln(('\$throw(new FallThroughError("' + span.file.filename + '",') + (' ' + span.file.getLine(span.start) + '))')); |
| + } |
| this.writer.exitBlock(''); |
| this._popBlock(); |
| } |
| @@ -7681,7 +7889,7 @@ |
| } |
| } |
| var assignKind = TokenKind.kindFromAssign(node.op.kind); |
| - if (assignKind == -1) { |
| + if (assignKind == -1.000000/*-1*/) { |
| var x = this.visitValue(node.x); |
| var y = this.visitValue(node.y); |
| var name = TokenKind.binaryMethodName(node.op.kind); |
| @@ -7807,6 +8015,7 @@ |
| var operand = new LiteralExpression(1, new TypeReference(node.span, world.numType), '1', node.span); |
| return this._visitAssign(kind, node.self, operand, node, to$call$1(null)); |
| } |
| + $throw(new FallThroughError("./gen.dart", 1743)) |
| case 19/*TokenKind.NOT*/: |
| @@ -7817,6 +8026,7 @@ |
| else { |
| return new Value(world.boolType, ('!' + value.code + ''), false, true, false); |
| } |
| + $throw(new FallThroughError("./gen.dart", 1758)) |
| case 42/*TokenKind.ADD*/: |
| case 43/*TokenKind.SUB*/: |
| @@ -7845,6 +8055,7 @@ |
| else world.internalError(('unimplemented: unary ' + node.op + ' on var'), node.span); |
| return new Value(world.varType, ('' + name + '(' + value.code + ')'), false, true, false); |
| } |
| + $throw(new FallThroughError("./gen.dart", 1769)) |
| default: |
| @@ -7991,7 +8202,7 @@ |
| var trueBranch = this.visitValue(node.trueBranch); |
| var falseBranch = this.visitValue(node.falseBranch); |
| var code = ('' + test.code + ' ? ' + trueBranch.code + ' : ' + falseBranch.code + ''); |
| - return new Value(lang_Type.union(trueBranch.type, falseBranch.type), code, false, true, false); |
| + return new Value(Type.union(trueBranch.type, falseBranch.type), code, false, true, false); |
| } |
| MethodGenerator.prototype.visitIsExpression = function(node) { |
| var value = this.visitValue(node.x); |
| @@ -8118,7 +8329,7 @@ |
| return i; |
| } |
| } |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| Arguments.prototype.getValue = function(name) { |
| var i = this.getIndexOfName(name); |
| @@ -8355,7 +8566,7 @@ |
| } |
| LibraryVisitor.prototype.addSource = function(source) { |
| this.library.sources.add(source); |
| - var parser = new lang_Parser(source, options.dietParse, 0); |
| + var parser = new Parser(source, options.dietParse, 0); |
| var unit = parser.compilationUnit(); |
| for (var $i = 0;$i < unit.length; $i++) { |
| var def = unit.$index($i); |
| @@ -8384,6 +8595,7 @@ |
| world.error('already specified library name', node.span); |
| } |
| break; |
| + $throw(new FallThroughError("./library.dart", 271)) |
| case "import": |
| @@ -8398,18 +8610,21 @@ |
| if ($eq(prefix, '')) prefix = null; |
| this.library.addImport(this.library.makeFullPath(name), prefix); |
| break; |
| + $throw(new FallThroughError("./library.dart", 289)) |
| case "source": |
| name = this.getSingleStringArg(node); |
| this.addSourceFromName(name); |
| break; |
| + $throw(new FallThroughError("./library.dart", 294)) |
| case "native": |
| name = this.getSingleStringArg(node); |
| this.library.addNative(this.library.makeFullPath(name)); |
| break; |
| + $throw(new FallThroughError("./library.dart", 299)) |
| default: |
| @@ -9179,96 +9394,115 @@ |
| value = -val0; |
| break; |
| + $throw(new FallThroughError("./member.dart", 763)) |
| case '\$add': |
| value = val0 + val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 764)) |
| case '\$sub': |
| value = val0 - val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 765)) |
| case '\$mul': |
| value = val0 * val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 766)) |
| case '\$div': |
| value = val0 / val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 767)) |
| case '\$truncdiv': |
| value = $truncdiv(val0, val1); |
| break; |
| + $throw(new FallThroughError("./member.dart", 768)) |
| case '\$mod': |
| value = val0 % val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 769)) |
| case '\$eq': |
| value = val0 == val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 770)) |
| case '\$lt': |
| value = val0 < val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 771)) |
| case '\$gt': |
| value = val0 > val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 772)) |
| case '\$lte': |
| value = val0 <= val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 773)) |
| case '\$gte': |
| value = val0 >= val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 774)) |
| case '\$ne': |
| value = val0 != val1; |
| break; |
| + $throw(new FallThroughError("./member.dart", 775)) |
| case '\$bit_not': |
| value = (~ival0).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 778)) |
| case '\$bit_or': |
| value = (ival0 | ival1).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 779)) |
| case '\$bit_xor': |
| value = (ival0 ^ ival1).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 780)) |
| case '\$bit_and': |
| value = (ival0 & ival1).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 781)) |
| case '\$shl': |
| value = (ival0 << ival1).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 782)) |
| case '\$sar': |
| value = (ival0 >> ival1).toDouble(); |
| break; |
| + $throw(new FallThroughError("./member.dart", 783)) |
| case '\$shr': |
| @@ -9741,7 +9975,7 @@ |
| } |
| MemberSet.prototype._tryUnion = function(x, y, node) { |
| if (x == null) return y; |
| - var type = lang_Type.union(x.type, y.type); |
| + var type = Type.union(x.type, y.type); |
| if (x.code == y.code) { |
| if ($eq(type, x.type)) { |
| return x; |
| @@ -9786,18 +10020,18 @@ |
| ); |
| } |
| FactoryMap.prototype.forEach$1 = FactoryMap.prototype.forEach; |
| -// ********** Code for lang_Token ************** |
| -function lang_Token(kind, source, start, end) { |
| +// ********** Code for Token ************** |
| +function Token(kind, source, start, end) { |
| this.kind = kind; |
| this.source = source; |
| this.start = start; |
| this.end = end; |
| // Initializers done |
| } |
| -lang_Token.prototype.get$text = function() { |
| +Token.prototype.get$text = function() { |
| return this.source.get$text().substring(this.start, this.end); |
| } |
| -lang_Token.prototype.toString = function() { |
| +Token.prototype.toString = function() { |
| var kindText = TokenKind.kindToString(this.kind); |
| var actualText = this.get$text(); |
| if ($ne(kindText, actualText)) { |
| @@ -9810,7 +10044,7 @@ |
| return kindText; |
| } |
| } |
| -lang_Token.prototype.get$span = function() { |
| +Token.prototype.get$span = function() { |
| return new SourceSpan(this.source, this.start, this.end); |
| } |
| // ********** Code for SourceFile ************** |
| @@ -9905,7 +10139,7 @@ |
| this.previous = previous; |
| this.quote = quote; |
| this.isMultiline = isMultiline; |
| - this.depth = -1; |
| + this.depth = -1.000000/*-1*/; |
| // Initializers done |
| } |
| InterpStack.prototype.pop = function() { |
| @@ -9920,31 +10154,31 @@ |
| function TokenizerBase(_source, _skipWhitespace, _index) { |
| this._source = _source; |
| this._skipWhitespace = _skipWhitespace; |
| - this._index = _index; |
| + this._lang_index = _index; |
| // Initializers done |
| this._text = this._source.get$text(); |
| } |
| $inherits(TokenizerBase, TokenizerHelpers); |
| TokenizerBase.prototype._nextChar = function() { |
| - if (this._index < this._text.length) { |
| - return this._text.charCodeAt(this._index++); |
| + if (this._lang_index < this._text.length) { |
| + return this._text.charCodeAt(this._lang_index++); |
| } |
| else { |
| return 0; |
| } |
| } |
| TokenizerBase.prototype._peekChar = function() { |
| - if (this._index < this._text.length) { |
| - return this._text.charCodeAt(this._index); |
| + if (this._lang_index < this._text.length) { |
| + return this._text.charCodeAt(this._lang_index); |
| } |
| else { |
| return 0; |
| } |
| } |
| TokenizerBase.prototype._maybeEatChar = function(ch) { |
| - if (this._index < this._text.length) { |
| - if (this._text.charCodeAt(this._index) == ch) { |
| - this._index++; |
| + if (this._lang_index < this._text.length) { |
| + if (this._text.charCodeAt(this._lang_index) == ch) { |
| + this._lang_index++; |
| return true; |
| } |
| else { |
| @@ -9956,15 +10190,15 @@ |
| } |
| } |
| TokenizerBase.prototype._finishToken = function(kind) { |
| - return new lang_Token(kind, this._source, this._startIndex, this._index); |
| + return new Token(kind, this._source, this._startIndex, this._lang_index); |
| } |
| TokenizerBase.prototype._errorToken = function() { |
| return this._finishToken(64/*TokenKind.ERROR*/); |
| } |
| TokenizerBase.prototype.finishWhitespace = function() { |
| - while (this._index < this._text.length) { |
| - if (!TokenizerHelpers.isWhitespace(this._text.charCodeAt(this._index++))) { |
| - this._index--; |
| + while (this._lang_index < this._text.length) { |
| + if (!TokenizerHelpers.isWhitespace(this._text.charCodeAt(this._lang_index++))) { |
| + this._lang_index--; |
| return this.next(); |
| } |
| } |
| @@ -10011,9 +10245,9 @@ |
| return this._errorToken(); |
| } |
| TokenizerBase.prototype.eatDigits = function() { |
| - while (this._index < this._text.length) { |
| - if (TokenizerHelpers.isDigit(this._text.charCodeAt(this._index))) { |
| - this._index++; |
| + while (this._lang_index < this._text.length) { |
| + if (TokenizerHelpers.isDigit(this._text.charCodeAt(this._lang_index))) { |
| + this._lang_index++; |
| } |
| else { |
| return; |
| @@ -10021,9 +10255,9 @@ |
| } |
| } |
| TokenizerBase.prototype.eatHexDigits = function() { |
| - while (this._index < this._text.length) { |
| - if (TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._index))) { |
| - this._index++; |
| + while (this._lang_index < this._text.length) { |
| + if (TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._lang_index))) { |
| + this._lang_index++; |
| } |
| else { |
| return; |
| @@ -10031,8 +10265,8 @@ |
| } |
| } |
| TokenizerBase.prototype.maybeEatHexDigit = function() { |
| - if (this._index < this._text.length && TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._index))) { |
| - this._index++; |
| + if (this._lang_index < this._text.length && TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._lang_index))) { |
| + this._lang_index++; |
| return true; |
| } |
| return false; |
| @@ -10049,7 +10283,7 @@ |
| this.eatDigits(); |
| } |
| else { |
| - this._index--; |
| + this._lang_index--; |
| } |
| } |
| return this.finishNumberExtra(); |
| @@ -10094,7 +10328,7 @@ |
| TokenizerBase.prototype._finishOpenBrace = function() { |
| var $0; |
| if (this._interpStack != null) { |
| - if (this._interpStack.depth == -1) { |
| + if (this._interpStack.depth == -1.000000/*-1*/) { |
| this._interpStack.depth = 1; |
| } |
| else { |
| @@ -10178,13 +10412,14 @@ |
| case 120: |
| return this.maybeEatHexDigit() && this.maybeEatHexDigit(); |
| + $throw(new FallThroughError("./tokenizer.dart", 336)) |
| case 117: |
| if (this._maybeEatChar(123)) { |
| - var start = this._index; |
| + var start = this._lang_index; |
| this.eatHexDigits(); |
| - var chars = this._index - start; |
| + var chars = this._lang_index - start; |
| if (chars > 0 && chars <= 6 && this._maybeEatChar(125)) { |
| hex = this._text.substring(start, start + chars); |
| break; |
| @@ -10195,20 +10430,21 @@ |
| } |
| else { |
| if (this.maybeEatHexDigit() && this.maybeEatHexDigit() && this.maybeEatHexDigit() && this.maybeEatHexDigit()) { |
| - hex = this._text.substring(this._index - 4, this._index); |
| + hex = this._text.substring(this._lang_index - 4, this._lang_index); |
| break; |
| } |
| else { |
| return false; |
| } |
| } |
| + $throw(new FallThroughError("./tokenizer.dart", 338)) |
| default: |
| return true; |
| } |
| - var n = lang_Parser.parseHex(hex); |
| + var n = Parser.parseHex(hex); |
| return n < 0xD800 || n > 0xDFFF && n <= 0x10FFFF; |
| } |
| TokenizerBase.prototype.finishDot = function() { |
| @@ -10221,14 +10457,14 @@ |
| } |
| } |
| TokenizerBase.prototype.finishIdentifier = function() { |
| - while (this._index < this._text.length) { |
| - if (!TokenizerHelpers.isIdentifierPart(this._text.charCodeAt(this._index++))) { |
| - this._index--; |
| + while (this._lang_index < this._text.length) { |
| + if (!TokenizerHelpers.isIdentifierPart(this._text.charCodeAt(this._lang_index++))) { |
| + this._lang_index--; |
| break; |
| } |
| } |
| var kind = this.getIdentifierKind(); |
| - if (this._interpStack != null && this._interpStack.depth == -1) { |
| + if (this._interpStack != null && this._interpStack.depth == -1.000000/*-1*/) { |
| this._interpStack.depth = 0; |
| } |
| if (kind == 69/*TokenKind.IDENTIFIER*/) { |
| @@ -10245,7 +10481,7 @@ |
| } |
| $inherits(Tokenizer, TokenizerBase); |
| Tokenizer.prototype.next = function() { |
| - this._startIndex = this._index; |
| + this._startIndex = this._lang_index; |
| if (this._interpStack != null && this._interpStack.depth == 0) { |
| var istack = this._interpStack; |
| this._interpStack = this._interpStack.pop(); |
| @@ -10262,6 +10498,7 @@ |
| case 0: |
| return this._finishToken(1/*TokenKind.END_OF_FILE*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 29)) |
| case 32: |
| case 9: |
| @@ -10269,6 +10506,7 @@ |
| case 13: |
| return this.finishWhitespace(); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 31)) |
| case 33: |
| @@ -10283,10 +10521,12 @@ |
| else { |
| return this._finishToken(19/*TokenKind.NOT*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 33)) |
| case 34: |
| return this.finishString(34); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 43)) |
| case 35: |
| @@ -10296,6 +10536,7 @@ |
| else { |
| return this._finishToken(12/*TokenKind.HASH*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 45)) |
| case 36: |
| @@ -10308,6 +10549,7 @@ |
| else { |
| return this.finishIdentifier(); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 51)) |
| case 37: |
| @@ -10317,6 +10559,7 @@ |
| else { |
| return this._finishToken(47/*TokenKind.MOD*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 59)) |
| case 38: |
| @@ -10329,18 +10572,22 @@ |
| else { |
| return this._finishToken(38/*TokenKind.BIT_AND*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 65)) |
| case 39: |
| return this.finishString(39); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 73)) |
| case 40: |
| return this._finishToken(2/*TokenKind.LPAREN*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 75)) |
| case 41: |
| return this._finishToken(3/*TokenKind.RPAREN*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 77)) |
| case 42: |
| @@ -10350,6 +10597,7 @@ |
| else { |
| return this._finishToken(44/*TokenKind.MUL*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 79)) |
| case 43: |
| @@ -10362,10 +10610,12 @@ |
| else { |
| return this._finishToken(42/*TokenKind.ADD*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 85)) |
| case 44: |
| return this._finishToken(11/*TokenKind.COMMA*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 93)) |
| case 45: |
| @@ -10378,6 +10628,7 @@ |
| else { |
| return this._finishToken(43/*TokenKind.SUB*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 95)) |
| case 46: |
| @@ -10392,6 +10643,7 @@ |
| else { |
| return this.finishDot(); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 103)) |
| case 47: |
| @@ -10407,6 +10659,7 @@ |
| else { |
| return this._finishToken(45/*TokenKind.DIV*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 113)) |
| case 48: |
| @@ -10419,14 +10672,17 @@ |
| else { |
| return this.finishNumber(); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 123)) |
| case 58: |
| return this._finishToken(8/*TokenKind.COLON*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 131)) |
| case 59: |
| return this._finishToken(10/*TokenKind.SEMICOLON*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 133)) |
| case 60: |
| @@ -10444,6 +10700,7 @@ |
| else { |
| return this._finishToken(52/*TokenKind.LT*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 135)) |
| case 61: |
| @@ -10461,6 +10718,7 @@ |
| else { |
| return this._finishToken(20/*TokenKind.ASSIGN*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 147)) |
| case 62: |
| @@ -10486,10 +10744,12 @@ |
| else { |
| return this._finishToken(53/*TokenKind.GT*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 159)) |
| case 63: |
| return this._finishToken(33/*TokenKind.CONDITIONAL*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 177)) |
| case 64: |
| @@ -10502,6 +10762,7 @@ |
| else { |
| return this._errorToken(); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 179)) |
| case 91: |
| @@ -10516,10 +10777,12 @@ |
| else { |
| return this._finishToken(4/*TokenKind.LBRACK*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 187)) |
| case 93: |
| return this._finishToken(5/*TokenKind.RBRACK*/); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 197)) |
| case 94: |
| @@ -10529,10 +10792,12 @@ |
| else { |
| return this._finishToken(37/*TokenKind.BIT_XOR*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 199)) |
| case 123: |
| return this._finishOpenBrace(); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 205)) |
| case 124: |
| @@ -10545,10 +10810,12 @@ |
| else { |
| return this._finishToken(36/*TokenKind.BIT_OR*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 207)) |
| case 125: |
| return this._finishCloseBrace(); |
| + $throw(new FallThroughError("./tokenizer.g.dart", 215)) |
| case 126: |
| @@ -10563,6 +10830,7 @@ |
| else { |
| return this._finishToken(18/*TokenKind.BIT_NOT*/); |
| } |
| + $throw(new FallThroughError("./tokenizer.g.dart", 217)) |
| default: |
| @@ -10580,7 +10848,7 @@ |
| } |
| Tokenizer.prototype.getIdentifierKind = function() { |
| var i0 = this._startIndex; |
| - switch (this._index - i0) { |
| + switch (this._lang_index - i0) { |
| case 2: |
| if (this._text.charCodeAt(i0) == 100) { |
| @@ -10598,6 +10866,7 @@ |
| } |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 253)) |
| case 3: |
| @@ -10620,6 +10889,7 @@ |
| if (this._text.charCodeAt(i0 + 1) == 97 && this._text.charCodeAt(i0 + 2) == 114) return 111/*TokenKind.VAR*/; |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 268)) |
| case 4: |
| @@ -10644,6 +10914,7 @@ |
| if (this._text.charCodeAt(i0 + 1) == 111 && this._text.charCodeAt(i0 + 2) == 105 && this._text.charCodeAt(i0 + 3) == 100) return 112/*TokenKind.VOID*/; |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 285)) |
| case 5: |
| @@ -10679,6 +10950,7 @@ |
| if (this._text.charCodeAt(i0 + 1) == 104 && this._text.charCodeAt(i0 + 2) == 105 && this._text.charCodeAt(i0 + 3) == 108 && this._text.charCodeAt(i0 + 4) == 101) return 113/*TokenKind.WHILE*/; |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 310)) |
| case 6: |
| @@ -10711,6 +10983,7 @@ |
| } |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 333)) |
| case 7: |
| @@ -10735,6 +11008,7 @@ |
| if (this._text.charCodeAt(i0 + 1) == 121 && this._text.charCodeAt(i0 + 2) == 112 && this._text.charCodeAt(i0 + 3) == 101 && this._text.charCodeAt(i0 + 4) == 100 && this._text.charCodeAt(i0 + 5) == 101 && this._text.charCodeAt(i0 + 6) == 102) return 86/*TokenKind.TYPEDEF*/; |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 350)) |
| case 8: |
| @@ -10748,16 +11022,19 @@ |
| if (this._text.charCodeAt(i0 + 1) == 112 && this._text.charCodeAt(i0 + 2) == 101 && this._text.charCodeAt(i0 + 3) == 114 && this._text.charCodeAt(i0 + 4) == 97 && this._text.charCodeAt(i0 + 5) == 116 && this._text.charCodeAt(i0 + 6) == 111 && this._text.charCodeAt(i0 + 7) == 114) return 82/*TokenKind.OPERATOR*/; |
| } |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 359)) |
| case 9: |
| if (this._text.charCodeAt(i0) == 105 && this._text.charCodeAt(i0 + 1) == 110 && this._text.charCodeAt(i0 + 2) == 116 && this._text.charCodeAt(i0 + 3) == 101 && this._text.charCodeAt(i0 + 4) == 114 && this._text.charCodeAt(i0 + 5) == 102 && this._text.charCodeAt(i0 + 6) == 97 && this._text.charCodeAt(i0 + 7) == 99 && this._text.charCodeAt(i0 + 8) == 101) return 78/*TokenKind.INTERFACE*/; |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 362)) |
| case 10: |
| if (this._text.charCodeAt(i0) == 105 && this._text.charCodeAt(i0 + 1) == 109 && this._text.charCodeAt(i0 + 2) == 112 && this._text.charCodeAt(i0 + 3) == 108 && this._text.charCodeAt(i0 + 4) == 101 && this._text.charCodeAt(i0 + 5) == 109 && this._text.charCodeAt(i0 + 6) == 101 && this._text.charCodeAt(i0 + 7) == 110 && this._text.charCodeAt(i0 + 8) == 116 && this._text.charCodeAt(i0 + 9) == 115) return 76/*TokenKind.IMPLEMENTS*/; |
| return 69/*TokenKind.IDENTIFIER*/; |
| + $throw(new FallThroughError("./tokenizer.g.dart", 365)) |
| default: |
| @@ -10789,454 +11066,567 @@ |
| case 1/*TokenKind.END_OF_FILE*/: |
| return "end of file"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 347)) |
| case 2/*TokenKind.LPAREN*/: |
| return "("; |
| + $throw(new FallThroughError("./token_kind.g.dart", 348)) |
| case 3/*TokenKind.RPAREN*/: |
| return ")"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 349)) |
| case 4/*TokenKind.LBRACK*/: |
| return "["; |
| + $throw(new FallThroughError("./token_kind.g.dart", 350)) |
| case 5/*TokenKind.RBRACK*/: |
| return "]"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 351)) |
| case 6/*TokenKind.LBRACE*/: |
| return "{"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 352)) |
| case 7/*TokenKind.RBRACE*/: |
| return "}"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 353)) |
| case 8/*TokenKind.COLON*/: |
| return ":"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 354)) |
| case 9/*TokenKind.ARROW*/: |
| return "=>"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 355)) |
| case 10/*TokenKind.SEMICOLON*/: |
| return ";"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 356)) |
| case 11/*TokenKind.COMMA*/: |
| return ","; |
| + $throw(new FallThroughError("./token_kind.g.dart", 357)) |
| case 12/*TokenKind.HASH*/: |
| return "#"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 358)) |
| case 13/*TokenKind.HASHBANG*/: |
| return "#!"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 359)) |
| case 14/*TokenKind.DOT*/: |
| return "."; |
| + $throw(new FallThroughError("./token_kind.g.dart", 360)) |
| case 15/*TokenKind.ELLIPSIS*/: |
| return "..."; |
| + $throw(new FallThroughError("./token_kind.g.dart", 361)) |
| case 16/*TokenKind.INCR*/: |
| return "++"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 362)) |
| case 17/*TokenKind.DECR*/: |
| return "--"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 363)) |
| case 18/*TokenKind.BIT_NOT*/: |
| return "~"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 364)) |
| case 19/*TokenKind.NOT*/: |
| return "!"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 365)) |
| case 20/*TokenKind.ASSIGN*/: |
| return "="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 366)) |
| case 21/*TokenKind.ASSIGN_OR*/: |
| return "|="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 367)) |
| case 22/*TokenKind.ASSIGN_XOR*/: |
| return "^="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 368)) |
| case 23/*TokenKind.ASSIGN_AND*/: |
| return "&="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 369)) |
| case 24/*TokenKind.ASSIGN_SHL*/: |
| return "<<="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 370)) |
| case 25/*TokenKind.ASSIGN_SAR*/: |
| return ">>="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 371)) |
| case 26/*TokenKind.ASSIGN_SHR*/: |
| return ">>>="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 372)) |
| case 27/*TokenKind.ASSIGN_ADD*/: |
| return "+="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 373)) |
| case 28/*TokenKind.ASSIGN_SUB*/: |
| return "-="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 374)) |
| case 29/*TokenKind.ASSIGN_MUL*/: |
| return "*="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 375)) |
| case 30/*TokenKind.ASSIGN_DIV*/: |
| return "/="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 376)) |
| case 31/*TokenKind.ASSIGN_TRUNCDIV*/: |
| return "~/="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 377)) |
| case 32/*TokenKind.ASSIGN_MOD*/: |
| return "%="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 378)) |
| case 33/*TokenKind.CONDITIONAL*/: |
| return "?"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 379)) |
| case 34/*TokenKind.OR*/: |
| return "||"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 380)) |
| case 35/*TokenKind.AND*/: |
| return "&&"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 381)) |
| case 36/*TokenKind.BIT_OR*/: |
| return "|"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 382)) |
| case 37/*TokenKind.BIT_XOR*/: |
| return "^"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 383)) |
| case 38/*TokenKind.BIT_AND*/: |
| return "&"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 384)) |
| case 39/*TokenKind.SHL*/: |
| return "<<"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 385)) |
| case 40/*TokenKind.SAR*/: |
| return ">>"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 386)) |
| case 41/*TokenKind.SHR*/: |
| return ">>>"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 387)) |
| case 42/*TokenKind.ADD*/: |
| return "+"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 388)) |
| case 43/*TokenKind.SUB*/: |
| return "-"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 389)) |
| case 44/*TokenKind.MUL*/: |
| return "*"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 390)) |
| case 45/*TokenKind.DIV*/: |
| return "/"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 391)) |
| case 46/*TokenKind.TRUNCDIV*/: |
| return "~/"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 392)) |
| case 47/*TokenKind.MOD*/: |
| return "%"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 393)) |
| case 48/*TokenKind.EQ*/: |
| return "=="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 394)) |
| case 49/*TokenKind.NE*/: |
| return "!="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 395)) |
| case 50/*TokenKind.EQ_STRICT*/: |
| return "==="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 396)) |
| case 51/*TokenKind.NE_STRICT*/: |
| return "!=="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 397)) |
| case 52/*TokenKind.LT*/: |
| return "<"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 398)) |
| case 53/*TokenKind.GT*/: |
| return ">"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 399)) |
| case 54/*TokenKind.LTE*/: |
| return "<="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 400)) |
| case 55/*TokenKind.GTE*/: |
| return ">="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 401)) |
| case 56/*TokenKind.INDEX*/: |
| return "[]"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 402)) |
| case 57/*TokenKind.SETINDEX*/: |
| return "[]="; |
| + $throw(new FallThroughError("./token_kind.g.dart", 403)) |
| case 58/*TokenKind.STRING*/: |
| return "string"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 404)) |
| case 59/*TokenKind.STRING_PART*/: |
| return "string part"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 405)) |
| case 60/*TokenKind.NUMBER*/: |
| return "number"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 406)) |
| case 61/*TokenKind.HEX_NUMBER*/: |
| return "hex number"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 407)) |
| case 62/*TokenKind.WHITESPACE*/: |
| return "whitespace"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 408)) |
| case 63/*TokenKind.COMMENT*/: |
| return "comment"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 409)) |
| case 64/*TokenKind.ERROR*/: |
| return "error"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 410)) |
| case 65/*TokenKind.INCOMPLETE_STRING*/: |
| return "incomplete string"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 411)) |
| case 66/*TokenKind.INCOMPLETE_COMMENT*/: |
| return "incomplete comment"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 412)) |
| case 67/*TokenKind.INCOMPLETE_MULTILINE_STRING_DQ*/: |
| return "incomplete multiline string dq"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 413)) |
| case 68/*TokenKind.INCOMPLETE_MULTILINE_STRING_SQ*/: |
| return "incomplete multiline string sq"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 414)) |
| case 69/*TokenKind.IDENTIFIER*/: |
| return "identifier"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 415)) |
| case 70/*TokenKind.ABSTRACT*/: |
| return "pseudo-keyword 'abstract'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 416)) |
| case 71/*TokenKind.ASSERT*/: |
| return "pseudo-keyword 'assert'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 417)) |
| case 72/*TokenKind.CLASS*/: |
| return "pseudo-keyword 'class'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 418)) |
| case 73/*TokenKind.EXTENDS*/: |
| return "pseudo-keyword 'extends'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 419)) |
| case 74/*TokenKind.FACTORY*/: |
| return "pseudo-keyword 'factory'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 420)) |
| case 75/*TokenKind.GET*/: |
| return "pseudo-keyword 'get'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 421)) |
| case 76/*TokenKind.IMPLEMENTS*/: |
| return "pseudo-keyword 'implements'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 422)) |
| case 77/*TokenKind.IMPORT*/: |
| return "pseudo-keyword 'import'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 423)) |
| case 78/*TokenKind.INTERFACE*/: |
| return "pseudo-keyword 'interface'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 424)) |
| case 79/*TokenKind.LIBRARY*/: |
| return "pseudo-keyword 'library'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 425)) |
| case 80/*TokenKind.NATIVE*/: |
| return "pseudo-keyword 'native'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 426)) |
| case 81/*TokenKind.NEGATE*/: |
| return "pseudo-keyword 'negate'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 427)) |
| case 82/*TokenKind.OPERATOR*/: |
| return "pseudo-keyword 'operator'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 428)) |
| case 83/*TokenKind.SET*/: |
| return "pseudo-keyword 'set'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 429)) |
| case 84/*TokenKind.SOURCE*/: |
| return "pseudo-keyword 'source'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 430)) |
| case 85/*TokenKind.STATIC*/: |
| return "pseudo-keyword 'static'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 431)) |
| case 86/*TokenKind.TYPEDEF*/: |
| return "pseudo-keyword 'typedef'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 432)) |
| case 87/*TokenKind.BREAK*/: |
| return "keyword 'break'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 433)) |
| case 88/*TokenKind.CASE*/: |
| return "keyword 'case'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 434)) |
| case 89/*TokenKind.CATCH*/: |
| return "keyword 'catch'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 435)) |
| case 90/*TokenKind.CONST*/: |
| return "keyword 'const'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 436)) |
| case 91/*TokenKind.CONTINUE*/: |
| return "keyword 'continue'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 437)) |
| case 92/*TokenKind.DEFAULT*/: |
| return "keyword 'default'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 438)) |
| case 93/*TokenKind.DO*/: |
| return "keyword 'do'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 439)) |
| case 94/*TokenKind.ELSE*/: |
| return "keyword 'else'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 440)) |
| case 95/*TokenKind.FALSE*/: |
| return "keyword 'false'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 441)) |
| case 96/*TokenKind.FINAL*/: |
| return "keyword 'final'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 442)) |
| case 97/*TokenKind.FINALLY*/: |
| return "keyword 'finally'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 443)) |
| case 98/*TokenKind.FOR*/: |
| return "keyword 'for'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 444)) |
| case 99/*TokenKind.IF*/: |
| return "keyword 'if'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 445)) |
| case 100/*TokenKind.IN*/: |
| return "keyword 'in'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 446)) |
| case 101/*TokenKind.IS*/: |
| return "keyword 'is'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 447)) |
| case 102/*TokenKind.NEW*/: |
| return "keyword 'new'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 448)) |
| case 103/*TokenKind.NULL*/: |
| return "keyword 'null'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 449)) |
| case 104/*TokenKind.RETURN*/: |
| return "keyword 'return'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 450)) |
| case 105/*TokenKind.SUPER*/: |
| return "keyword 'super'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 451)) |
| case 106/*TokenKind.SWITCH*/: |
| return "keyword 'switch'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 452)) |
| case 107/*TokenKind.THIS*/: |
| return "keyword 'this'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 453)) |
| case 108/*TokenKind.THROW*/: |
| return "keyword 'throw'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 454)) |
| case 109/*TokenKind.TRUE*/: |
| return "keyword 'true'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 455)) |
| case 110/*TokenKind.TRY*/: |
| return "keyword 'try'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 456)) |
| case 111/*TokenKind.VAR*/: |
| return "keyword 'var'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 457)) |
| case 112/*TokenKind.VOID*/: |
| return "keyword 'void'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 458)) |
| case 113/*TokenKind.WHILE*/: |
| return "keyword 'while'"; |
| + $throw(new FallThroughError("./token_kind.g.dart", 459)) |
| default: |
| @@ -11252,154 +11642,191 @@ |
| case 20/*TokenKind.ASSIGN*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 470)) |
| case 21/*TokenKind.ASSIGN_OR*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 471)) |
| case 22/*TokenKind.ASSIGN_XOR*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 472)) |
| case 23/*TokenKind.ASSIGN_AND*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 473)) |
| case 24/*TokenKind.ASSIGN_SHL*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 474)) |
| case 25/*TokenKind.ASSIGN_SAR*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 475)) |
| case 26/*TokenKind.ASSIGN_SHR*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 476)) |
| case 27/*TokenKind.ASSIGN_ADD*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 477)) |
| case 28/*TokenKind.ASSIGN_SUB*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 478)) |
| case 29/*TokenKind.ASSIGN_MUL*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 479)) |
| case 30/*TokenKind.ASSIGN_DIV*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 480)) |
| case 31/*TokenKind.ASSIGN_TRUNCDIV*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 481)) |
| case 32/*TokenKind.ASSIGN_MOD*/: |
| return 2; |
| + $throw(new FallThroughError("./token_kind.g.dart", 482)) |
| case 33/*TokenKind.CONDITIONAL*/: |
| return 3; |
| + $throw(new FallThroughError("./token_kind.g.dart", 483)) |
| case 34/*TokenKind.OR*/: |
| return 4; |
| + $throw(new FallThroughError("./token_kind.g.dart", 484)) |
| case 35/*TokenKind.AND*/: |
| return 5; |
| + $throw(new FallThroughError("./token_kind.g.dart", 485)) |
| case 36/*TokenKind.BIT_OR*/: |
| return 6; |
| + $throw(new FallThroughError("./token_kind.g.dart", 486)) |
| case 37/*TokenKind.BIT_XOR*/: |
| return 7; |
| + $throw(new FallThroughError("./token_kind.g.dart", 487)) |
| case 38/*TokenKind.BIT_AND*/: |
| return 8; |
| + $throw(new FallThroughError("./token_kind.g.dart", 488)) |
| case 39/*TokenKind.SHL*/: |
| return 11; |
| + $throw(new FallThroughError("./token_kind.g.dart", 489)) |
| case 40/*TokenKind.SAR*/: |
| return 11; |
| + $throw(new FallThroughError("./token_kind.g.dart", 490)) |
| case 41/*TokenKind.SHR*/: |
| return 11; |
| + $throw(new FallThroughError("./token_kind.g.dart", 491)) |
| case 42/*TokenKind.ADD*/: |
| return 12; |
| + $throw(new FallThroughError("./token_kind.g.dart", 492)) |
| case 43/*TokenKind.SUB*/: |
| return 12; |
| + $throw(new FallThroughError("./token_kind.g.dart", 493)) |
| case 44/*TokenKind.MUL*/: |
| return 13; |
| + $throw(new FallThroughError("./token_kind.g.dart", 494)) |
| case 45/*TokenKind.DIV*/: |
| return 13; |
| + $throw(new FallThroughError("./token_kind.g.dart", 495)) |
| case 46/*TokenKind.TRUNCDIV*/: |
| return 13; |
| + $throw(new FallThroughError("./token_kind.g.dart", 496)) |
| case 47/*TokenKind.MOD*/: |
| return 13; |
| + $throw(new FallThroughError("./token_kind.g.dart", 497)) |
| case 48/*TokenKind.EQ*/: |
| return 9; |
| + $throw(new FallThroughError("./token_kind.g.dart", 498)) |
| case 49/*TokenKind.NE*/: |
| return 9; |
| + $throw(new FallThroughError("./token_kind.g.dart", 499)) |
| case 50/*TokenKind.EQ_STRICT*/: |
| return 9; |
| + $throw(new FallThroughError("./token_kind.g.dart", 500)) |
| case 51/*TokenKind.NE_STRICT*/: |
| return 9; |
| + $throw(new FallThroughError("./token_kind.g.dart", 501)) |
| case 52/*TokenKind.LT*/: |
| return 10; |
| + $throw(new FallThroughError("./token_kind.g.dart", 502)) |
| case 53/*TokenKind.GT*/: |
| return 10; |
| + $throw(new FallThroughError("./token_kind.g.dart", 503)) |
| case 54/*TokenKind.LTE*/: |
| return 10; |
| + $throw(new FallThroughError("./token_kind.g.dart", 504)) |
| case 55/*TokenKind.GTE*/: |
| return 10; |
| + $throw(new FallThroughError("./token_kind.g.dart", 505)) |
| case 101/*TokenKind.IS*/: |
| return 10; |
| + $throw(new FallThroughError("./token_kind.g.dart", 506)) |
| default: |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| } |
| @@ -11408,82 +11835,102 @@ |
| case '\$bit_not': |
| return '~'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 513)) |
| case '\$bit_or': |
| return '|'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 514)) |
| case '\$bit_xor': |
| return '^'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 515)) |
| case '\$bit_and': |
| return '&'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 516)) |
| case '\$shl': |
| return '<<'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 517)) |
| case '\$sar': |
| return '>>'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 518)) |
| case '\$shr': |
| return '>>>'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 519)) |
| case '\$add': |
| return '+'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 520)) |
| case '\$sub': |
| return '-'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 521)) |
| case '\$mul': |
| return '*'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 522)) |
| case '\$div': |
| return '/'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 523)) |
| case '\$truncdiv': |
| return '~/'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 524)) |
| case '\$mod': |
| return '%'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 525)) |
| case '\$eq': |
| return '=='; |
| + $throw(new FallThroughError("./token_kind.g.dart", 526)) |
| case '\$lt': |
| return '<'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 527)) |
| case '\$gt': |
| return '>'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 528)) |
| case '\$lte': |
| return '<='; |
| + $throw(new FallThroughError("./token_kind.g.dart", 529)) |
| case '\$gte': |
| return '>='; |
| + $throw(new FallThroughError("./token_kind.g.dart", 530)) |
| case '\$index': |
| return '[]'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 531)) |
| case '\$setindex': |
| return '[]='; |
| + $throw(new FallThroughError("./token_kind.g.dart", 532)) |
| case '\$ne': |
| @@ -11496,78 +11943,97 @@ |
| case 18/*TokenKind.BIT_NOT*/: |
| return '\$bit_not'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 539)) |
| case 36/*TokenKind.BIT_OR*/: |
| return '\$bit_or'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 540)) |
| case 37/*TokenKind.BIT_XOR*/: |
| return '\$bit_xor'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 541)) |
| case 38/*TokenKind.BIT_AND*/: |
| return '\$bit_and'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 542)) |
| case 39/*TokenKind.SHL*/: |
| return '\$shl'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 543)) |
| case 40/*TokenKind.SAR*/: |
| return '\$sar'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 544)) |
| case 41/*TokenKind.SHR*/: |
| return '\$shr'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 545)) |
| case 42/*TokenKind.ADD*/: |
| return '\$add'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 546)) |
| case 43/*TokenKind.SUB*/: |
| return '\$sub'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 547)) |
| case 44/*TokenKind.MUL*/: |
| return '\$mul'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 548)) |
| case 45/*TokenKind.DIV*/: |
| return '\$div'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 549)) |
| case 46/*TokenKind.TRUNCDIV*/: |
| return '\$truncdiv'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 550)) |
| case 47/*TokenKind.MOD*/: |
| return '\$mod'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 551)) |
| case 48/*TokenKind.EQ*/: |
| return '\$eq'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 552)) |
| case 52/*TokenKind.LT*/: |
| return '\$lt'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 553)) |
| case 53/*TokenKind.GT*/: |
| return '\$gt'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 554)) |
| case 54/*TokenKind.LTE*/: |
| return '\$lte'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 555)) |
| case 55/*TokenKind.GTE*/: |
| return '\$gte'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 556)) |
| case 56/*TokenKind.INDEX*/: |
| return '\$index'; |
| + $throw(new FallThroughError("./token_kind.g.dart", 557)) |
| case 57/*TokenKind.SETINDEX*/: |
| @@ -11578,12 +12044,12 @@ |
| TokenKind.kindFromAssign = function(kind) { |
| if (kind == 20/*TokenKind.ASSIGN*/) return 0; |
| if (kind > 20/*TokenKind.ASSIGN*/ && kind <= 32/*TokenKind.ASSIGN_MOD*/) { |
| - return kind + (15)/*(ADD - ASSIGN_ADD)*/; |
| + return kind + (15.000000)/*(ADD - ASSIGN_ADD)*/; |
| } |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| -// ********** Code for lang_Parser ************** |
| -function lang_Parser(source, diet, startOffset) { |
| +// ********** Code for Parser ************** |
| +function Parser(source, diet, startOffset) { |
| this.source = source; |
| this.diet = diet; |
| // Initializers done |
| @@ -11592,7 +12058,7 @@ |
| this._previousToken = null; |
| this._inInitializers = false; |
| } |
| -lang_Parser.prototype.isPrematureEndOfFile = function() { |
| +Parser.prototype.isPrematureEndOfFile = function() { |
| if (this._maybeEat(1/*TokenKind.END_OF_FILE*/)) { |
| this._lang_error('unexpected end of file', this._peekToken.get$span()); |
| return true; |
| @@ -11601,21 +12067,21 @@ |
| return false; |
| } |
| } |
| -lang_Parser.prototype._peek = function() { |
| +Parser.prototype._peek = function() { |
| return this._peekToken.kind; |
| } |
| -lang_Parser.prototype._lang_next = function() { |
| +Parser.prototype._lang_next = function() { |
| this._previousToken = this._peekToken; |
| this._peekToken = this.tokenizer.next(); |
| return this._previousToken; |
| } |
| -lang_Parser.prototype._peekKind = function(kind) { |
| +Parser.prototype._peekKind = function(kind) { |
| return this._peekToken.kind == kind; |
| } |
| -lang_Parser.prototype._peekIdentifier = function() { |
| +Parser.prototype._peekIdentifier = function() { |
| return TokenKind.isIdentifier(this._peekToken.kind); |
| } |
| -lang_Parser.prototype._maybeEat = function(kind) { |
| +Parser.prototype._maybeEat = function(kind) { |
| if (this._peekToken.kind == kind) { |
| this._previousToken = this._peekToken; |
| this._peekToken = this.tokenizer.next(); |
| @@ -11625,26 +12091,26 @@ |
| return false; |
| } |
| } |
| -lang_Parser.prototype._eat = function(kind) { |
| +Parser.prototype._eat = function(kind) { |
| if (!this._maybeEat(kind)) { |
| this._errorExpected(TokenKind.kindToString(kind)); |
| } |
| } |
| -lang_Parser.prototype._eatSemicolon = function() { |
| +Parser.prototype._eatSemicolon = function() { |
| this._eat(10/*TokenKind.SEMICOLON*/); |
| } |
| -lang_Parser.prototype._errorExpected = function(expected) { |
| +Parser.prototype._errorExpected = function(expected) { |
| var tok = this._lang_next(); |
| var message = ('expected ' + expected + ', but found ' + tok + ''); |
| this._lang_error(message, tok.get$span()); |
| } |
| -lang_Parser.prototype._lang_error = function(message, location) { |
| +Parser.prototype._lang_error = function(message, location) { |
| if (location == null) { |
| location = this._peekToken.get$span(); |
| } |
| world.fatal(message, location); |
| } |
| -lang_Parser.prototype._skipBlock = function() { |
| +Parser.prototype._skipBlock = function() { |
| var depth = 1; |
| this._eat(6/*TokenKind.LBRACE*/); |
| while (true) { |
| @@ -11662,10 +12128,10 @@ |
| } |
| } |
| } |
| -lang_Parser.prototype._makeSpan = function(start) { |
| +Parser.prototype._makeSpan = function(start) { |
| return new SourceSpan(this.source, start, this._previousToken.end); |
| } |
| -lang_Parser.prototype.compilationUnit = function() { |
| +Parser.prototype.compilationUnit = function() { |
| var ret = []; |
| this._maybeEat(13/*TokenKind.HASHBANG*/); |
| while (this._peekKind(12/*TokenKind.HASH*/)) { |
| @@ -11676,7 +12142,7 @@ |
| } |
| return ret; |
| } |
| -lang_Parser.prototype.directive = function() { |
| +Parser.prototype.directive = function() { |
| var start = this._peekToken.start; |
| this._eat(12/*TokenKind.HASH*/); |
| var name = this.identifier(); |
| @@ -11684,19 +12150,22 @@ |
| this._eatSemicolon(); |
| return new DirectiveDefinition(name, args, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.topLevelDefinition = function() { |
| +Parser.prototype.topLevelDefinition = function() { |
| switch (this._peek()) { |
| case 72/*TokenKind.CLASS*/: |
| return this.classDefinition(72/*TokenKind.CLASS*/); |
| + $throw(new FallThroughError("./parser.dart", 157)) |
| case 78/*TokenKind.INTERFACE*/: |
| return this.classDefinition(78/*TokenKind.INTERFACE*/); |
| + $throw(new FallThroughError("./parser.dart", 159)) |
| case 86/*TokenKind.TYPEDEF*/: |
| return this.functionTypeAlias(); |
| + $throw(new FallThroughError("./parser.dart", 161)) |
| default: |
| @@ -11704,7 +12173,7 @@ |
| } |
| } |
| -lang_Parser.prototype.classDefinition = function(kind) { |
| +Parser.prototype.classDefinition = function(kind) { |
| var start = this._peekToken.start; |
| this._eat(kind); |
| var name = this.identifier(); |
| @@ -11740,7 +12209,7 @@ |
| } |
| return new TypeDefinition(kind == 72/*TokenKind.CLASS*/, name, typeParams, _extends, _implements, _native, _factory, body, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.functionTypeAlias = function() { |
| +Parser.prototype.functionTypeAlias = function() { |
| var start = this._peekToken.start; |
| this._eat(86/*TokenKind.TYPEDEF*/); |
| var di = this.declaredIdentifier(false); |
| @@ -11753,7 +12222,7 @@ |
| var func = new FunctionDefinition(null, di.type, di.get$name(), formals, null, null, this._makeSpan(start)); |
| return new FunctionTypeDefinition(func, typeParams, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.initializers = function() { |
| +Parser.prototype.initializers = function() { |
| this._inInitializers = true; |
| var ret = []; |
| do { |
| @@ -11763,7 +12232,7 @@ |
| this._inInitializers = false; |
| return ret; |
| } |
| -lang_Parser.prototype.functionBody = function(inExpression) { |
| +Parser.prototype.functionBody = function(inExpression) { |
| var start = this._peekToken.start; |
| if (this._maybeEat(9/*TokenKind.ARROW*/)) { |
| var expr = this.expression(); |
| @@ -11798,7 +12267,7 @@ |
| } |
| this._lang_error('Expected function body (neither { nor => found)'); |
| } |
| -lang_Parser.prototype.finishField = function(start, modifiers, type, name, value) { |
| +Parser.prototype.finishField = function(start, modifiers, type, name, value) { |
| var names = [name]; |
| var values = [value]; |
| while (this._maybeEat(11/*TokenKind.COMMA*/)) { |
| @@ -11813,7 +12282,7 @@ |
| this._eatSemicolon(); |
| return new VariableDefinition(modifiers, type, names, values, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.finishDefinition = function(start, modifiers, di) { |
| +Parser.prototype.finishDefinition = function(start, modifiers, di) { |
| switch (this._peek()) { |
| case 2/*TokenKind.LPAREN*/: |
| @@ -11827,17 +12296,20 @@ |
| di.name = di.type.get$name(); |
| } |
| return new FunctionDefinition(modifiers, di.type, di.get$name(), formals, inits, body, this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 307)) |
| case 20/*TokenKind.ASSIGN*/: |
| this._eat(20/*TokenKind.ASSIGN*/); |
| var value = this.expression(); |
| return this.finishField(start, modifiers, di.type, di.get$name(), value); |
| + $throw(new FallThroughError("./parser.dart", 313)) |
| case 11/*TokenKind.COMMA*/: |
| case 10/*TokenKind.SEMICOLON*/: |
| return this.finishField(start, modifiers, di.type, di.get$name(), null); |
| + $throw(new FallThroughError("./parser.dart", 317)) |
| default: |
| @@ -11846,7 +12318,7 @@ |
| } |
| } |
| -lang_Parser.prototype.declaration = function() { |
| +Parser.prototype.declaration = function() { |
| var start = this._peekToken.start; |
| if (this._peekKind(74/*TokenKind.FACTORY*/)) { |
| return this.factoryConstructorDeclaration(); |
| @@ -11854,7 +12326,7 @@ |
| var modifiers = this._readModifiers(); |
| return this.finishDefinition(start, modifiers, this.declaredIdentifier(true)); |
| } |
| -lang_Parser.prototype.factoryConstructorDeclaration = function() { |
| +Parser.prototype.factoryConstructorDeclaration = function() { |
| var start = this._peekToken.start; |
| var factoryToken = this._lang_next(); |
| var names = [this.identifier()]; |
| @@ -11875,11 +12347,11 @@ |
| name = names.removeLast(); |
| } |
| else { |
| - name = new lang_Identifier('', names.$index(0).get$span()); |
| + name = new Identifier('', names.$index(0).get$span()); |
| } |
| } |
| else { |
| - name = new lang_Identifier('', names.$index(0).get$span()); |
| + name = new Identifier('', names.$index(0).get$span()); |
| } |
| if (names.length > 1) { |
| this._lang_error('unsupported qualified name for factory', names.$index(0).get$span()); |
| @@ -11888,67 +12360,82 @@ |
| var di = new DeclaredIdentifier(type, name, this._makeSpan(start)); |
| return this.finishDefinition(start, [factoryToken], di); |
| } |
| -lang_Parser.prototype.statement = function() { |
| +Parser.prototype.statement = function() { |
| switch (this._peek()) { |
| case 87/*TokenKind.BREAK*/: |
| return this.breakStatement(); |
| + $throw(new FallThroughError("./parser.dart", 379)) |
| case 91/*TokenKind.CONTINUE*/: |
| return this.continueStatement(); |
| + $throw(new FallThroughError("./parser.dart", 381)) |
| case 104/*TokenKind.RETURN*/: |
| return this.returnStatement(); |
| + $throw(new FallThroughError("./parser.dart", 383)) |
| case 108/*TokenKind.THROW*/: |
| return this.throwStatement(); |
| + $throw(new FallThroughError("./parser.dart", 385)) |
| case 71/*TokenKind.ASSERT*/: |
| return this.assertStatement(); |
| + $throw(new FallThroughError("./parser.dart", 387)) |
| case 113/*TokenKind.WHILE*/: |
| return this.whileStatement(); |
| + $throw(new FallThroughError("./parser.dart", 390)) |
| case 93/*TokenKind.DO*/: |
| return this.doStatement(); |
| + $throw(new FallThroughError("./parser.dart", 392)) |
| case 98/*TokenKind.FOR*/: |
| return this.forStatement(); |
| + $throw(new FallThroughError("./parser.dart", 394)) |
| case 99/*TokenKind.IF*/: |
| return this.ifStatement(); |
| + $throw(new FallThroughError("./parser.dart", 397)) |
| case 106/*TokenKind.SWITCH*/: |
| return this.switchStatement(); |
| + $throw(new FallThroughError("./parser.dart", 399)) |
| case 110/*TokenKind.TRY*/: |
| return this.tryStatement(); |
| + $throw(new FallThroughError("./parser.dart", 402)) |
| case 6/*TokenKind.LBRACE*/: |
| return this.block(); |
| + $throw(new FallThroughError("./parser.dart", 405)) |
| case 10/*TokenKind.SEMICOLON*/: |
| return this.emptyStatement(); |
| + $throw(new FallThroughError("./parser.dart", 407)) |
| case 96/*TokenKind.FINAL*/: |
| return this.declaration(); |
| + $throw(new FallThroughError("./parser.dart", 410)) |
| case 111/*TokenKind.VAR*/: |
| return this.declaration(); |
| + $throw(new FallThroughError("./parser.dart", 412)) |
| default: |
| @@ -11956,7 +12443,7 @@ |
| } |
| } |
| -lang_Parser.prototype.finishExpressionAsStatement = function(expr) { |
| +Parser.prototype.finishExpressionAsStatement = function(expr) { |
| var start = expr.get$span().start; |
| if (this._maybeEat(8/*TokenKind.COLON*/)) { |
| var label = this._makeLabel(expr); |
| @@ -11993,16 +12480,16 @@ |
| } |
| else { |
| this._eatSemicolon(); |
| - return new lang_ExpressionStatement(expr, this._makeSpan(expr.get$span().start)); |
| + return new ExpressionStatement(expr, this._makeSpan(expr.get$span().start)); |
| } |
| } |
| -lang_Parser.prototype.testCondition = function() { |
| +Parser.prototype.testCondition = function() { |
| this._eat(2/*TokenKind.LPAREN*/); |
| var ret = this.expression(); |
| this._eat(3/*TokenKind.RPAREN*/); |
| return ret; |
| } |
| -lang_Parser.prototype.block = function() { |
| +Parser.prototype.block = function() { |
| var start = this._peekToken.start; |
| this._eat(6/*TokenKind.LBRACE*/); |
| var stmts = []; |
| @@ -12012,12 +12499,12 @@ |
| } |
| return new BlockStatement(stmts, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.emptyStatement = function() { |
| +Parser.prototype.emptyStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(10/*TokenKind.SEMICOLON*/); |
| return new EmptyStatement(this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.ifStatement = function() { |
| +Parser.prototype.ifStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(99/*TokenKind.IF*/); |
| var test = this.testCondition(); |
| @@ -12028,14 +12515,14 @@ |
| } |
| return new IfStatement(test, trueBranch, falseBranch, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.whileStatement = function() { |
| +Parser.prototype.whileStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(113/*TokenKind.WHILE*/); |
| var test = this.testCondition(); |
| var body = this.statement(); |
| return new WhileStatement(test, body, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.doStatement = function() { |
| +Parser.prototype.doStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(93/*TokenKind.DO*/); |
| var body = this.statement(); |
| @@ -12044,7 +12531,7 @@ |
| this._eatSemicolon(); |
| return new DoStatement(body, test, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.forStatement = function() { |
| +Parser.prototype.forStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(98/*TokenKind.FOR*/); |
| this._eat(2/*TokenKind.LPAREN*/); |
| @@ -12068,7 +12555,7 @@ |
| var body = this.statement(); |
| return new ForStatement(init, test, step, body, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.forInitializerStatement = function(start) { |
| +Parser.prototype.forInitializerStatement = function(start) { |
| if (this._maybeEat(10/*TokenKind.SEMICOLON*/)) { |
| return null; |
| } |
| @@ -12090,13 +12577,13 @@ |
| } |
| } |
| } |
| -lang_Parser.prototype._finishForIn = function(start, di) { |
| +Parser.prototype._finishForIn = function(start, di) { |
| var expr = this.expression(); |
| this._eat(3/*TokenKind.RPAREN*/); |
| var body = this.statement(); |
| return new ForInStatement(di, expr, body, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.tryStatement = function() { |
| +Parser.prototype.tryStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(110/*TokenKind.TRY*/); |
| var body = this.block(); |
| @@ -12110,7 +12597,7 @@ |
| } |
| return new TryStatement(body, catches, finallyBlock, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.catchNode = function() { |
| +Parser.prototype.catchNode = function() { |
| var start = this._peekToken.start; |
| this._eat(89/*TokenKind.CATCH*/); |
| this._eat(2/*TokenKind.LPAREN*/); |
| @@ -12123,7 +12610,7 @@ |
| var body = this.block(); |
| return new CatchNode(exc, trace, body, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.switchStatement = function() { |
| +Parser.prototype.switchStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(106/*TokenKind.SWITCH*/); |
| var test = this.testCondition(); |
| @@ -12134,11 +12621,11 @@ |
| } |
| return new SwitchStatement(test, cases, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype._peekCaseEnd = function() { |
| +Parser.prototype._peekCaseEnd = function() { |
| var kind = this._peek(); |
| return $eq(kind, 7/*TokenKind.RBRACE*/) || $eq(kind, 88/*TokenKind.CASE*/) || $eq(kind, 92/*TokenKind.DEFAULT*/); |
| } |
| -lang_Parser.prototype.caseNode = function() { |
| +Parser.prototype.caseNode = function() { |
| var start = this._peekToken.start; |
| var label = null; |
| if (this._peekIdentifier()) { |
| @@ -12169,7 +12656,7 @@ |
| } |
| return new CaseNode(label, cases, stmts, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.returnStatement = function() { |
| +Parser.prototype.returnStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(104/*TokenKind.RETURN*/); |
| var expr; |
| @@ -12182,7 +12669,7 @@ |
| } |
| return new ReturnStatement(expr, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.throwStatement = function() { |
| +Parser.prototype.throwStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(108/*TokenKind.THROW*/); |
| var expr; |
| @@ -12195,7 +12682,7 @@ |
| } |
| return new ThrowStatement(expr, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.assertStatement = function() { |
| +Parser.prototype.assertStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(71/*TokenKind.ASSERT*/); |
| this._eat(2/*TokenKind.LPAREN*/); |
| @@ -12204,7 +12691,7 @@ |
| this._eatSemicolon(); |
| return new AssertStatement(expr, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.breakStatement = function() { |
| +Parser.prototype.breakStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(87/*TokenKind.BREAK*/); |
| var name = null; |
| @@ -12214,7 +12701,7 @@ |
| this._eatSemicolon(); |
| return new BreakStatement(name, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.continueStatement = function() { |
| +Parser.prototype.continueStatement = function() { |
| var start = this._peekToken.start; |
| this._eat(91/*TokenKind.CONTINUE*/); |
| var name = null; |
| @@ -12224,10 +12711,10 @@ |
| this._eatSemicolon(); |
| return new ContinueStatement(name, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.expression = function() { |
| +Parser.prototype.expression = function() { |
| return this.infixExpression(0); |
| } |
| -lang_Parser.prototype._makeType = function(expr) { |
| +Parser.prototype._makeType = function(expr) { |
| if ((expr instanceof VarExpression)) { |
| return new NameTypeReference(false, expr.get$name(), null, expr.get$span()); |
| } |
| @@ -12247,14 +12734,14 @@ |
| return null; |
| } |
| } |
| -lang_Parser.prototype.infixExpression = function(precedence) { |
| +Parser.prototype.infixExpression = function(precedence) { |
| return this.finishInfixExpression(this.unaryExpression(), precedence); |
| } |
| -lang_Parser.prototype._finishDeclaredId = function(type) { |
| +Parser.prototype._finishDeclaredId = function(type) { |
| var name = this.identifier(); |
| return this.finishPostfixExpression(new DeclaredIdentifier(type, name, this._makeSpan(type.get$span().start))); |
| } |
| -lang_Parser.prototype._fixAsType = function(x) { |
| +Parser.prototype._fixAsType = function(x) { |
| if (this._maybeEat(53/*TokenKind.GT*/)) { |
| var base = this._makeType(x.x); |
| var typeParam = this._makeType(x.y); |
| @@ -12279,7 +12766,7 @@ |
| return this._finishDeclaredId(type); |
| } |
| } |
| -lang_Parser.prototype.finishInfixExpression = function(x, precedence) { |
| +Parser.prototype.finishInfixExpression = function(x, precedence) { |
| while (true) { |
| var kind = this._peek(); |
| var prec = TokenKind.infixPrecedence(this._peek()); |
| @@ -12312,7 +12799,7 @@ |
| } |
| return x; |
| } |
| -lang_Parser.prototype._isPrefixUnaryOperator = function(kind) { |
| +Parser.prototype._isPrefixUnaryOperator = function(kind) { |
| switch (kind) { |
| case 42/*TokenKind.ADD*/: |
| case 43/*TokenKind.SUB*/: |
| @@ -12322,6 +12809,7 @@ |
| case 17/*TokenKind.DECR*/: |
| return true; |
| + $throw(new FallThroughError("./parser.dart", 835)) |
| default: |
| @@ -12329,7 +12817,7 @@ |
| } |
| } |
| -lang_Parser.prototype.unaryExpression = function() { |
| +Parser.prototype.unaryExpression = function() { |
| var start = this._peekToken.start; |
| if (this._isPrefixUnaryOperator(this._peek())) { |
| var tok = this._lang_next(); |
| @@ -12338,12 +12826,12 @@ |
| } |
| return this.finishPostfixExpression(this.primary()); |
| } |
| -lang_Parser.prototype.argument = function() { |
| +Parser.prototype.argument = function() { |
| var start = this._peekToken.start; |
| var expr; |
| var label = null; |
| if (this._maybeEat(15/*TokenKind.ELLIPSIS*/)) { |
| - label = new lang_Identifier('...', this._makeSpan(start)); |
| + label = new Identifier('...', this._makeSpan(start)); |
| } |
| expr = this.expression(); |
| if (label == null && this._maybeEat(8/*TokenKind.COLON*/)) { |
| @@ -12352,7 +12840,7 @@ |
| } |
| return new ArgumentNode(label, expr, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.arguments = function() { |
| +Parser.prototype.arguments = function() { |
| var args = []; |
| this._eat(2/*TokenKind.LPAREN*/); |
| if (!this._maybeEat(3/*TokenKind.RPAREN*/)) { |
| @@ -12364,14 +12852,15 @@ |
| } |
| return args; |
| } |
| -lang_Parser.prototype.get$arguments = function() { |
| - return lang_Parser.prototype.arguments.bind(this); |
| +Parser.prototype.get$arguments = function() { |
| + return Parser.prototype.arguments.bind(this); |
| } |
| -lang_Parser.prototype.finishPostfixExpression = function(expr) { |
| +Parser.prototype.finishPostfixExpression = function(expr) { |
| switch (this._peek()) { |
| case 2/*TokenKind.LPAREN*/: |
| return this.finishPostfixExpression(new CallExpression(expr, this.arguments(), this._makeSpan(expr.get$span().start))); |
| + $throw(new FallThroughError("./parser.dart", 884)) |
| case 4/*TokenKind.LBRACK*/: |
| @@ -12379,6 +12868,7 @@ |
| var index = this.expression(); |
| this._eat(5/*TokenKind.RBRACK*/); |
| return this.finishPostfixExpression(new IndexExpression(expr, index, this._makeSpan(expr.get$span().start))); |
| + $throw(new FallThroughError("./parser.dart", 890)) |
| case 14/*TokenKind.DOT*/: |
| @@ -12386,12 +12876,14 @@ |
| var name = this.identifier(); |
| var ret = new DotExpression(expr, name, this._makeSpan(expr.get$span().start)); |
| return this.finishPostfixExpression(ret); |
| + $throw(new FallThroughError("./parser.dart", 896)) |
| case 16/*TokenKind.INCR*/: |
| case 17/*TokenKind.DECR*/: |
| var tok = this._lang_next(); |
| return new PostfixExpression(expr, tok, this._makeSpan(expr.get$span().start)); |
| + $throw(new FallThroughError("./parser.dart", 901)) |
| case 9/*TokenKind.ARROW*/: |
| case 6/*TokenKind.LBRACE*/: |
| @@ -12399,6 +12891,7 @@ |
| if (this._inInitializers) return expr; |
| var body = this.functionBody(true); |
| return this._makeFunction(expr, body); |
| + $throw(new FallThroughError("./parser.dart", 909)) |
| default: |
| @@ -12411,30 +12904,32 @@ |
| } |
| } |
| -lang_Parser.prototype._isBin = function(expr, kind) { |
| +Parser.prototype._isBin = function(expr, kind) { |
| return (expr instanceof BinaryExpression) && expr.op.kind == kind; |
| } |
| -lang_Parser.prototype._boolTypeRef = function(span) { |
| +Parser.prototype._boolTypeRef = function(span) { |
| return new TypeReference(span, world.boolType); |
| } |
| -lang_Parser.prototype._numTypeRef = function(span) { |
| +Parser.prototype._numTypeRef = function(span) { |
| return new TypeReference(span, world.numType); |
| } |
| -lang_Parser.prototype._stringTypeRef = function(span) { |
| +Parser.prototype._stringTypeRef = function(span) { |
| return new TypeReference(span, world.stringType); |
| } |
| -lang_Parser.prototype.primary = function() { |
| +Parser.prototype.primary = function() { |
| var start = this._peekToken.start; |
| switch (this._peek()) { |
| case 107/*TokenKind.THIS*/: |
| this._eat(107/*TokenKind.THIS*/); |
| return new ThisExpression(this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 944)) |
| case 105/*TokenKind.SUPER*/: |
| this._eat(105/*TokenKind.SUPER*/); |
| return new SuperExpression(this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 948)) |
| case 90/*TokenKind.CONST*/: |
| @@ -12451,67 +12946,81 @@ |
| else { |
| return this.finishNewExpression(start, true); |
| } |
| + $throw(new FallThroughError("./parser.dart", 952)) |
| case 102/*TokenKind.NEW*/: |
| this._eat(102/*TokenKind.NEW*/); |
| return this.finishNewExpression(start, false); |
| + $throw(new FallThroughError("./parser.dart", 964)) |
| case 2/*TokenKind.LPAREN*/: |
| return this._parenOrLambda(); |
| + $throw(new FallThroughError("./parser.dart", 967)) |
| case 4/*TokenKind.LBRACK*/: |
| case 56/*TokenKind.INDEX*/: |
| return this.finishListLiteral(start, false, null); |
| + $throw(new FallThroughError("./parser.dart", 971)) |
| case 6/*TokenKind.LBRACE*/: |
| return this.finishMapLiteral(start, false, null); |
| + $throw(new FallThroughError("./parser.dart", 973)) |
| case 103/*TokenKind.NULL*/: |
| this._eat(103/*TokenKind.NULL*/); |
| return new NullExpression(this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 978)) |
| case 109/*TokenKind.TRUE*/: |
| this._eat(109/*TokenKind.TRUE*/); |
| return new LiteralExpression(true, this._boolTypeRef(this._makeSpan(start)), 'true', this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 983)) |
| case 95/*TokenKind.FALSE*/: |
| this._eat(95/*TokenKind.FALSE*/); |
| return new LiteralExpression(false, this._boolTypeRef(this._makeSpan(start)), 'false', this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 988)) |
| case 61/*TokenKind.HEX_NUMBER*/: |
| var t = this._lang_next(); |
| - return new LiteralExpression(lang_Parser.parseHex(t.get$text().substring(2)), this._numTypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| + return new LiteralExpression(Parser.parseHex(t.get$text().substring(2)), this._numTypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 994)) |
| case 60/*TokenKind.NUMBER*/: |
| var t = this._lang_next(); |
| return new LiteralExpression(Math.parseDouble(t.get$text()), this._numTypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| + $throw(new FallThroughError("./parser.dart", 999)) |
| case 58/*TokenKind.STRING*/: |
| return this.stringLiteralExpr(); |
| + $throw(new FallThroughError("./parser.dart", 1003)) |
| case 65/*TokenKind.INCOMPLETE_STRING*/: |
| return this.stringInterpolation(); |
| + $throw(new FallThroughError("./parser.dart", 1006)) |
| case 52/*TokenKind.LT*/: |
| return this.finishTypedLiteral(start, false); |
| + $throw(new FallThroughError("./parser.dart", 1009)) |
| case 112/*TokenKind.VOID*/: |
| case 111/*TokenKind.VAR*/: |
| case 96/*TokenKind.FINAL*/: |
| return this.declaredIdentifier(false); |
| + $throw(new FallThroughError("./parser.dart", 1014)) |
| default: |
| @@ -12522,7 +13031,7 @@ |
| } |
| } |
| -lang_Parser.prototype.stringInterpolation = function() { |
| +Parser.prototype.stringInterpolation = function() { |
| var start = this._peekToken.start; |
| var lits = []; |
| var startQuote = null, endQuote = null; |
| @@ -12561,14 +13070,14 @@ |
| var span = this._makeSpan(start); |
| return new LiteralExpression(lits, this._stringTypeRef(span), '\$\$\$', span); |
| } |
| -lang_Parser.prototype.makeStringLiteral = function(text, span) { |
| +Parser.prototype.makeStringLiteral = function(text, span) { |
| return new LiteralExpression(text, this._stringTypeRef(span), text, span); |
| } |
| -lang_Parser.prototype.stringLiteralExpr = function() { |
| +Parser.prototype.stringLiteralExpr = function() { |
| var token = this._lang_next(); |
| return this.makeStringLiteral(token.get$text(), token.get$span()); |
| } |
| -lang_Parser.prototype.maybeStringLiteral = function() { |
| +Parser.prototype.maybeStringLiteral = function() { |
| var kind = this._peek(); |
| if ($eq(kind, 58/*TokenKind.STRING*/)) { |
| return parseStringLiteral(this._lang_next().get$text()); |
| @@ -12583,7 +13092,7 @@ |
| } |
| return null; |
| } |
| -lang_Parser.prototype._parenOrLambda = function() { |
| +Parser.prototype._parenOrLambda = function() { |
| var start = this._peekToken.start; |
| var args = this.arguments(); |
| if (!this._inInitializers && (this._peekKind(9/*TokenKind.ARROW*/) || this._peekKind(6/*TokenKind.LBRACE*/))) { |
| @@ -12602,10 +13111,10 @@ |
| } |
| } |
| } |
| -lang_Parser.prototype._typeAsIdentifier = function(type) { |
| +Parser.prototype._typeAsIdentifier = function(type) { |
| return type.get$name(); |
| } |
| -lang_Parser.prototype._specialIdentifier = function(includeOperators) { |
| +Parser.prototype._specialIdentifier = function(includeOperators) { |
| var start = this._peekToken.start; |
| var name; |
| switch (this._peek()) { |
| @@ -12615,6 +13124,7 @@ |
| this._lang_error('rest no longer supported', this._previousToken); |
| name = this.identifier().get$name(); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1123)) |
| case 107/*TokenKind.THIS*/: |
| @@ -12622,6 +13132,7 @@ |
| this._eat(14/*TokenKind.DOT*/); |
| name = ('this.' + this.identifier().get$name() + ''); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1128)) |
| case 75/*TokenKind.GET*/: |
| @@ -12629,6 +13140,7 @@ |
| this._eat(75/*TokenKind.GET*/); |
| name = ('get\$' + this.identifier().get$name() + ''); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1133)) |
| case 83/*TokenKind.SET*/: |
| @@ -12636,6 +13148,7 @@ |
| this._eat(83/*TokenKind.SET*/); |
| name = ('set\$' + this.identifier().get$name() + ''); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1138)) |
| case 82/*TokenKind.OPERATOR*/: |
| @@ -12653,15 +13166,16 @@ |
| } |
| } |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1152)) |
| default: |
| return null; |
| } |
| - return new lang_Identifier(name, this._makeSpan(start)); |
| + return new Identifier(name, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.declaredIdentifier = function(includeOperators) { |
| +Parser.prototype.declaredIdentifier = function(includeOperators) { |
| var start = this._peekToken.start; |
| var myType = null; |
| var name = this._specialIdentifier(includeOperators); |
| @@ -12682,7 +13196,7 @@ |
| } |
| return new DeclaredIdentifier(myType, name, this._makeSpan(start)); |
| } |
| -lang_Parser._hexDigit = function(c) { |
| +Parser._hexDigit = function(c) { |
| if (c >= 48 && c <= 57) { |
| return c - 48; |
| } |
| @@ -12693,28 +13207,28 @@ |
| return c - 55; |
| } |
| else { |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| } |
| -lang_Parser.parseHex = function(hex) { |
| +Parser.parseHex = function(hex) { |
| var result = 0; |
| for (var i = 0; |
| i < hex.length; i++) { |
| - var digit = lang_Parser._hexDigit(hex.charCodeAt(i)); |
| + var digit = Parser._hexDigit(hex.charCodeAt(i)); |
| result = (result << 4) + digit; |
| } |
| return result; |
| } |
| -lang_Parser.prototype.finishNewExpression = function(start, isConst) { |
| +Parser.prototype.finishNewExpression = function(start, isConst) { |
| var type = this.type(0); |
| var name = null; |
| if (this._maybeEat(14/*TokenKind.DOT*/)) { |
| name = this.identifier(); |
| } |
| var args = this.arguments(); |
| - return new lang_NewExpression(isConst, type, name, args, this._makeSpan(start)); |
| + return new NewExpression(isConst, type, name, args, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.finishListLiteral = function(start, isConst, type) { |
| +Parser.prototype.finishListLiteral = function(start, isConst, type) { |
| if (this._maybeEat(56/*TokenKind.INDEX*/)) { |
| return new ListExpression(isConst, type, [], this._makeSpan(start)); |
| } |
| @@ -12730,7 +13244,7 @@ |
| } |
| return new ListExpression(isConst, type, values, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.finishMapLiteral = function(start, isConst, type) { |
| +Parser.prototype.finishMapLiteral = function(start, isConst, type) { |
| var items = []; |
| this._eat(6/*TokenKind.LBRACE*/); |
| while (!this._maybeEat(7/*TokenKind.RBRACE*/)) { |
| @@ -12745,7 +13259,7 @@ |
| } |
| return new MapExpression(isConst, type, items, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.finishTypedLiteral = function(start, isConst) { |
| +Parser.prototype.finishTypedLiteral = function(start, isConst) { |
| var span = this._makeSpan(start); |
| var typeToBeNamedLater = new NameTypeReference(false, null, null, span); |
| var genericType = this.addTypeArguments(typeToBeNamedLater, 0); |
| @@ -12759,7 +13273,7 @@ |
| this._errorExpected('array or map literal'); |
| } |
| } |
| -lang_Parser.prototype._readModifiers = function() { |
| +Parser.prototype._readModifiers = function() { |
| var modifiers = null; |
| while (true) { |
| switch (this._peek()) { |
| @@ -12772,6 +13286,7 @@ |
| if (modifiers == null) modifiers = []; |
| modifiers.add(this._lang_next()); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1281)) |
| default: |
| @@ -12781,7 +13296,7 @@ |
| } |
| return null; |
| } |
| -lang_Parser.prototype.typeParameter = function() { |
| +Parser.prototype.typeParameter = function() { |
| var start = this._peekToken.start; |
| var name = this.identifier(); |
| var myType = null; |
| @@ -12790,7 +13305,7 @@ |
| } |
| return new TypeParameter(name, myType, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.typeParameters = function() { |
| +Parser.prototype.typeParameters = function() { |
| this._eat(52/*TokenKind.LT*/); |
| var closed = false; |
| var ret = []; |
| @@ -12808,10 +13323,10 @@ |
| } |
| return ret; |
| } |
| -lang_Parser.prototype.get$typeParameters = function() { |
| - return lang_Parser.prototype.typeParameters.bind(this); |
| +Parser.prototype.get$typeParameters = function() { |
| + return Parser.prototype.typeParameters.bind(this); |
| } |
| -lang_Parser.prototype._eatClosingAngle = function(depth) { |
| +Parser.prototype._eatClosingAngle = function(depth) { |
| if (this._maybeEat(53/*TokenKind.GT*/)) { |
| return depth; |
| } |
| @@ -12826,12 +13341,12 @@ |
| return depth; |
| } |
| } |
| -lang_Parser.prototype.addTypeArguments = function(baseType, depth) { |
| +Parser.prototype.addTypeArguments = function(baseType, depth) { |
| this._eat(52/*TokenKind.LT*/); |
| return this._finishTypeArguments(baseType, depth, []); |
| } |
| -lang_Parser.prototype._finishTypeArguments = function(baseType, depth, types) { |
| - var delta = -1; |
| +Parser.prototype._finishTypeArguments = function(baseType, depth, types) { |
| + var delta = -1.000000/*-1*/; |
| do { |
| var myType = this.type(depth + 1); |
| types.add(myType); |
| @@ -12850,7 +13365,7 @@ |
| var span = this._makeSpan(baseType.span.start); |
| return new GenericTypeReference(baseType, types, depth, span); |
| } |
| -lang_Parser.prototype.typeList = function() { |
| +Parser.prototype.typeList = function() { |
| var types = []; |
| do { |
| types.add(this.type(0)); |
| @@ -12858,7 +13373,7 @@ |
| while (this._maybeEat(11/*TokenKind.COMMA*/)) |
| return types; |
| } |
| -lang_Parser.prototype.type = function(depth) { |
| +Parser.prototype.type = function(depth) { |
| var start = this._peekToken.start; |
| var name; |
| var names = null; |
| @@ -12868,10 +13383,12 @@ |
| case 112/*TokenKind.VOID*/: |
| return new TypeReference(this._lang_next().get$span(), world.voidType); |
| + $throw(new FallThroughError("./parser.dart", 1379)) |
| case 111/*TokenKind.VAR*/: |
| return new TypeReference(this._lang_next().get$span(), world.varType); |
| + $throw(new FallThroughError("./parser.dart", 1381)) |
| case 96/*TokenKind.FINAL*/: |
| @@ -12879,6 +13396,7 @@ |
| isFinal = true; |
| name = this.identifier(); |
| break; |
| + $throw(new FallThroughError("./parser.dart", 1386)) |
| default: |
| @@ -12898,7 +13416,7 @@ |
| return typeRef; |
| } |
| } |
| -lang_Parser.prototype.formalParameter = function(inOptionalBlock) { |
| +Parser.prototype.formalParameter = function(inOptionalBlock) { |
| var start = this._peekToken.start; |
| var isThis = false; |
| var isRest = false; |
| @@ -12922,7 +13440,7 @@ |
| } |
| return new FormalNode(isThis, isRest, type, name, value, this._makeSpan(start)); |
| } |
| -lang_Parser.prototype.formalParameterList = function() { |
| +Parser.prototype.formalParameterList = function() { |
| this._eat(2/*TokenKind.LPAREN*/); |
| var formals = []; |
| var inOptionalBlock = false; |
| @@ -12947,14 +13465,14 @@ |
| } |
| return formals; |
| } |
| -lang_Parser.prototype.identifier = function() { |
| +Parser.prototype.identifier = function() { |
| var tok = this._lang_next(); |
| if (!TokenKind.isIdentifier(tok.kind)) { |
| this._lang_error(('expected identifier, but found ' + tok + ''), tok.get$span()); |
| } |
| - return new lang_Identifier(tok.get$text(), this._makeSpan(tok.start)); |
| + return new Identifier(tok.get$text(), this._makeSpan(tok.start)); |
| } |
| -lang_Parser.prototype._makeFunction = function(expr, body) { |
| +Parser.prototype._makeFunction = function(expr, body) { |
| var name, type; |
| if ((expr instanceof CallExpression)) { |
| if ((expr.target instanceof VarExpression)) { |
| @@ -12977,7 +13495,7 @@ |
| this._lang_error('expected function'); |
| } |
| } |
| -lang_Parser.prototype._makeFormal = function(expr) { |
| +Parser.prototype._makeFormal = function(expr) { |
| if ((expr instanceof VarExpression)) { |
| return new FormalNode(false, false, null, expr.get$name(), null, expr.get$span()); |
| } |
| @@ -12998,7 +13516,7 @@ |
| this._lang_error('expected formal', expr.get$span()); |
| } |
| } |
| -lang_Parser.prototype._makeFormalsFromList = function(expr) { |
| +Parser.prototype._makeFormalsFromList = function(expr) { |
| if (expr.get$isConst()) { |
| this._lang_error('expected formal, but found "const"', expr.get$span()); |
| } |
| @@ -13007,7 +13525,7 @@ |
| } |
| return this._makeFormalsFromExpressions(expr.values, false); |
| } |
| -lang_Parser.prototype._makeFormals = function(arguments) { |
| +Parser.prototype._makeFormals = function(arguments) { |
| var expressions = []; |
| for (var i = 0; |
| i < arguments.length; i++) { |
| @@ -13019,7 +13537,7 @@ |
| } |
| return this._makeFormalsFromExpressions(expressions, true); |
| } |
| -lang_Parser.prototype._makeFormalsFromExpressions = function(expressions, allowOptional) { |
| +Parser.prototype._makeFormalsFromExpressions = function(expressions, allowOptional) { |
| var formals = []; |
| for (var i = 0; |
| i < expressions.length; i++) { |
| @@ -13062,7 +13580,7 @@ |
| } |
| return formals; |
| } |
| -lang_Parser.prototype._makeDeclaredIdentifier = function(e) { |
| +Parser.prototype._makeDeclaredIdentifier = function(e) { |
| if ((e instanceof VarExpression)) { |
| return new DeclaredIdentifier(null, e.get$name(), e.get$span()); |
| } |
| @@ -13074,7 +13592,7 @@ |
| return new DeclaredIdentifier(null, null, e.get$span()); |
| } |
| } |
| -lang_Parser.prototype._makeLabel = function(expr) { |
| +Parser.prototype._makeLabel = function(expr) { |
| if ((expr instanceof VarExpression)) { |
| return expr.get$name(); |
| } |
| @@ -13083,41 +13601,41 @@ |
| return null; |
| } |
| } |
| -// ********** Code for lang_Node ************** |
| -function lang_Node(span) { |
| +// ********** Code for Node ************** |
| +function Node(span) { |
| this.span = span; |
| // Initializers done |
| } |
| -lang_Node.prototype.get$span = function() { return this.span; }; |
| -lang_Node.prototype.set$span = function(value) { return this.span = value; }; |
| +Node.prototype.get$span = function() { return this.span; }; |
| +Node.prototype.set$span = function(value) { return this.span = value; }; |
| // ********** Code for Definition ************** |
| function Definition(span) { |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(Definition, lang_Statement); |
| +$inherits(Definition, Statement); |
| Definition.prototype.get$typeParameters = function() { |
| return null; |
| } |
| -// ********** Code for lang_Statement ************** |
| -function lang_Statement(span) { |
| - lang_Node.call(this, span); |
| +// ********** Code for Statement ************** |
| +function Statement(span) { |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(lang_Statement, lang_Node); |
| -// ********** Code for lang_Expression ************** |
| -function lang_Expression(span) { |
| - lang_Node.call(this, span); |
| +$inherits(Statement, Node); |
| +// ********** Code for Expression ************** |
| +function Expression(span) { |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(lang_Expression, lang_Node); |
| +$inherits(Expression, Node); |
| // ********** Code for TypeReference ************** |
| function TypeReference(span, type) { |
| this.type = type; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(TypeReference, lang_Node); |
| +$inherits(TypeReference, Node); |
| TypeReference.prototype.visit = function(visitor) { |
| return visitor.visitTypeReference(this); |
| } |
| @@ -13140,7 +13658,7 @@ |
| } |
| TreeOutput.prototype.toValue = function(value) { |
| if (value == null) return 'null'; |
| - else if ((value instanceof lang_Identifier)) return value.get$name(); |
| + else if ((value instanceof Identifier)) return value.get$name(); |
| else return value.toString(); |
| } |
| TreeOutput.prototype.writeNode = function(label, node) { |
| @@ -13271,10 +13789,10 @@ |
| // ********** Code for ReturnStatement ************** |
| function ReturnStatement(value, span) { |
| this.value = value; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ReturnStatement, lang_Statement); |
| +$inherits(ReturnStatement, Statement); |
| ReturnStatement.prototype.get$value = function() { return this.value; }; |
| ReturnStatement.prototype.set$value = function(value) { return this.value = value; }; |
| ReturnStatement.prototype.visit = function(visitor) { |
| @@ -13283,10 +13801,10 @@ |
| // ********** Code for ThrowStatement ************** |
| function ThrowStatement(value, span) { |
| this.value = value; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ThrowStatement, lang_Statement); |
| +$inherits(ThrowStatement, Statement); |
| ThrowStatement.prototype.get$value = function() { return this.value; }; |
| ThrowStatement.prototype.set$value = function(value) { return this.value = value; }; |
| ThrowStatement.prototype.visit = function(visitor) { |
| @@ -13295,30 +13813,30 @@ |
| // ********** Code for AssertStatement ************** |
| function AssertStatement(test, span) { |
| this.test = test; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(AssertStatement, lang_Statement); |
| +$inherits(AssertStatement, Statement); |
| AssertStatement.prototype.visit = function(visitor) { |
| return visitor.visitAssertStatement(this); |
| } |
| // ********** Code for BreakStatement ************** |
| function BreakStatement(label, span) { |
| this.label = label; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(BreakStatement, lang_Statement); |
| +$inherits(BreakStatement, Statement); |
| BreakStatement.prototype.visit = function(visitor) { |
| return visitor.visitBreakStatement(this); |
| } |
| // ********** Code for ContinueStatement ************** |
| function ContinueStatement(label, span) { |
| this.label = label; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ContinueStatement, lang_Statement); |
| +$inherits(ContinueStatement, Statement); |
| ContinueStatement.prototype.visit = function(visitor) { |
| return visitor.visitContinueStatement(this); |
| } |
| @@ -13327,10 +13845,10 @@ |
| this.test = test; |
| this.trueBranch = trueBranch; |
| this.falseBranch = falseBranch; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(IfStatement, lang_Statement); |
| +$inherits(IfStatement, Statement); |
| IfStatement.prototype.visit = function(visitor) { |
| return visitor.visitIfStatement(this); |
| } |
| @@ -13338,10 +13856,10 @@ |
| function WhileStatement(test, body, span) { |
| this.test = test; |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(WhileStatement, lang_Statement); |
| +$inherits(WhileStatement, Statement); |
| WhileStatement.prototype.visit = function(visitor) { |
| return visitor.visitWhileStatement(this); |
| } |
| @@ -13349,10 +13867,10 @@ |
| function DoStatement(body, test, span) { |
| this.body = body; |
| this.test = test; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(DoStatement, lang_Statement); |
| +$inherits(DoStatement, Statement); |
| DoStatement.prototype.visit = function(visitor) { |
| return visitor.visitDoStatement(this); |
| } |
| @@ -13362,10 +13880,10 @@ |
| this.test = test; |
| this.step = step; |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ForStatement, lang_Statement); |
| +$inherits(ForStatement, Statement); |
| ForStatement.prototype.visit = function(visitor) { |
| return visitor.visitForStatement(this); |
| } |
| @@ -13374,10 +13892,10 @@ |
| this.item = item; |
| this.list = list; |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ForInStatement, lang_Statement); |
| +$inherits(ForInStatement, Statement); |
| ForInStatement.prototype.visit = function(visitor) { |
| return visitor.visitForInStatement(this); |
| } |
| @@ -13386,10 +13904,10 @@ |
| this.body = body; |
| this.catches = catches; |
| this.finallyBlock = finallyBlock; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(TryStatement, lang_Statement); |
| +$inherits(TryStatement, Statement); |
| TryStatement.prototype.visit = function(visitor) { |
| return visitor.visitTryStatement(this); |
| } |
| @@ -13397,20 +13915,20 @@ |
| function SwitchStatement(test, cases, span) { |
| this.test = test; |
| this.cases = cases; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(SwitchStatement, lang_Statement); |
| +$inherits(SwitchStatement, Statement); |
| SwitchStatement.prototype.visit = function(visitor) { |
| return visitor.visitSwitchStatement(this); |
| } |
| // ********** Code for BlockStatement ************** |
| function BlockStatement(body, span) { |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(BlockStatement, lang_Statement); |
| +$inherits(BlockStatement, Statement); |
| BlockStatement.prototype.visit = function(visitor) { |
| return visitor.visitBlockStatement(this); |
| } |
| @@ -13418,60 +13936,60 @@ |
| function LabeledStatement(name, body, span) { |
| this.name = name; |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(LabeledStatement, lang_Statement); |
| +$inherits(LabeledStatement, Statement); |
| LabeledStatement.prototype.get$name = function() { return this.name; }; |
| LabeledStatement.prototype.set$name = function(value) { return this.name = value; }; |
| LabeledStatement.prototype.visit = function(visitor) { |
| return visitor.visitLabeledStatement(this); |
| } |
| -// ********** Code for lang_ExpressionStatement ************** |
| -function lang_ExpressionStatement(body, span) { |
| +// ********** Code for ExpressionStatement ************** |
| +function ExpressionStatement(body, span) { |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(lang_ExpressionStatement, lang_Statement); |
| -lang_ExpressionStatement.prototype.visit = function(visitor) { |
| +$inherits(ExpressionStatement, Statement); |
| +ExpressionStatement.prototype.visit = function(visitor) { |
| return visitor.visitExpressionStatement(this); |
| } |
| // ********** Code for EmptyStatement ************** |
| function EmptyStatement(span) { |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(EmptyStatement, lang_Statement); |
| +$inherits(EmptyStatement, Statement); |
| EmptyStatement.prototype.visit = function(visitor) { |
| return visitor.visitEmptyStatement(this); |
| } |
| // ********** Code for DietStatement ************** |
| function DietStatement(span) { |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(DietStatement, lang_Statement); |
| +$inherits(DietStatement, Statement); |
| DietStatement.prototype.visit = function(visitor) { |
| return visitor.visitDietStatement(this); |
| } |
| // ********** Code for NativeStatement ************** |
| function NativeStatement(body, span) { |
| this.body = body; |
| - lang_Statement.call(this, span); |
| + Statement.call(this, span); |
| // Initializers done |
| } |
| -$inherits(NativeStatement, lang_Statement); |
| +$inherits(NativeStatement, Statement); |
| NativeStatement.prototype.visit = function(visitor) { |
| return visitor.visitNativeStatement(this); |
| } |
| // ********** Code for LambdaExpression ************** |
| function LambdaExpression(func, span) { |
| this.func = func; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(LambdaExpression, lang_Expression); |
| +$inherits(LambdaExpression, Expression); |
| LambdaExpression.prototype.visit = function(visitor) { |
| return visitor.visitLambdaExpression(this); |
| } |
| @@ -13479,10 +13997,10 @@ |
| function CallExpression(target, arguments, span) { |
| this.target = target; |
| this.arguments = arguments; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(CallExpression, lang_Expression); |
| +$inherits(CallExpression, Expression); |
| CallExpression.prototype.get$arguments = function() { return this.arguments; }; |
| CallExpression.prototype.set$arguments = function(value) { return this.arguments = value; }; |
| CallExpression.prototype.visit = function(visitor) { |
| @@ -13492,10 +14010,10 @@ |
| function IndexExpression(target, index, span) { |
| this.target = target; |
| this.index = index; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(IndexExpression, lang_Expression); |
| +$inherits(IndexExpression, Expression); |
| IndexExpression.prototype.visit = function(visitor) { |
| return visitor.visitIndexExpression(this); |
| } |
| @@ -13504,10 +14022,10 @@ |
| this.op = op; |
| this.x = x; |
| this.y = y; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(BinaryExpression, lang_Expression); |
| +$inherits(BinaryExpression, Expression); |
| BinaryExpression.prototype.visit = function(visitor) { |
| return visitor.visitBinaryExpression(this); |
| } |
| @@ -13515,10 +14033,10 @@ |
| function UnaryExpression(op, self, span) { |
| this.op = op; |
| this.self = self; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(UnaryExpression, lang_Expression); |
| +$inherits(UnaryExpression, Expression); |
| UnaryExpression.prototype.visit = function(visitor) { |
| return visitor.visitUnaryExpression(this); |
| } |
| @@ -13526,30 +14044,30 @@ |
| function PostfixExpression(body, op, span) { |
| this.body = body; |
| this.op = op; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(PostfixExpression, lang_Expression); |
| +$inherits(PostfixExpression, Expression); |
| PostfixExpression.prototype.visit = function(visitor) { |
| return visitor.visitPostfixExpression$1(this); |
| } |
| -// ********** Code for lang_NewExpression ************** |
| -function lang_NewExpression(isConst, type, name, arguments, span) { |
| +// ********** Code for NewExpression ************** |
| +function NewExpression(isConst, type, name, arguments, span) { |
| this.isConst = isConst; |
| this.type = type; |
| this.name = name; |
| this.arguments = arguments; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(lang_NewExpression, lang_Expression); |
| -lang_NewExpression.prototype.get$isConst = function() { return this.isConst; }; |
| -lang_NewExpression.prototype.set$isConst = function(value) { return this.isConst = value; }; |
| -lang_NewExpression.prototype.get$name = function() { return this.name; }; |
| -lang_NewExpression.prototype.set$name = function(value) { return this.name = value; }; |
| -lang_NewExpression.prototype.get$arguments = function() { return this.arguments; }; |
| -lang_NewExpression.prototype.set$arguments = function(value) { return this.arguments = value; }; |
| -lang_NewExpression.prototype.visit = function(visitor) { |
| +$inherits(NewExpression, Expression); |
| +NewExpression.prototype.get$isConst = function() { return this.isConst; }; |
| +NewExpression.prototype.set$isConst = function(value) { return this.isConst = value; }; |
| +NewExpression.prototype.get$name = function() { return this.name; }; |
| +NewExpression.prototype.set$name = function(value) { return this.name = value; }; |
| +NewExpression.prototype.get$arguments = function() { return this.arguments; }; |
| +NewExpression.prototype.set$arguments = function(value) { return this.arguments = value; }; |
| +NewExpression.prototype.visit = function(visitor) { |
| return visitor.visitNewExpression(this); |
| } |
| // ********** Code for ListExpression ************** |
| @@ -13557,10 +14075,10 @@ |
| this.isConst = isConst; |
| this.type = type; |
| this.values = values; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ListExpression, lang_Expression); |
| +$inherits(ListExpression, Expression); |
| ListExpression.prototype.get$isConst = function() { return this.isConst; }; |
| ListExpression.prototype.set$isConst = function(value) { return this.isConst = value; }; |
| ListExpression.prototype.visit = function(visitor) { |
| @@ -13571,10 +14089,10 @@ |
| this.isConst = isConst; |
| this.type = type; |
| this.items = items; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(MapExpression, lang_Expression); |
| +$inherits(MapExpression, Expression); |
| MapExpression.prototype.get$isConst = function() { return this.isConst; }; |
| MapExpression.prototype.set$isConst = function(value) { return this.isConst = value; }; |
| MapExpression.prototype.visit = function(visitor) { |
| @@ -13585,10 +14103,10 @@ |
| this.test = test; |
| this.trueBranch = trueBranch; |
| this.falseBranch = falseBranch; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ConditionalExpression, lang_Expression); |
| +$inherits(ConditionalExpression, Expression); |
| ConditionalExpression.prototype.visit = function(visitor) { |
| return visitor.visitConditionalExpression(this); |
| } |
| @@ -13597,20 +14115,20 @@ |
| this.isTrue = isTrue; |
| this.x = x; |
| this.type = type; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(IsExpression, lang_Expression); |
| +$inherits(IsExpression, Expression); |
| IsExpression.prototype.visit = function(visitor) { |
| return visitor.visitIsExpression(this); |
| } |
| // ********** Code for ParenExpression ************** |
| function ParenExpression(body, span) { |
| this.body = body; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ParenExpression, lang_Expression); |
| +$inherits(ParenExpression, Expression); |
| ParenExpression.prototype.visit = function(visitor) { |
| return visitor.visitParenExpression(this); |
| } |
| @@ -13618,10 +14136,10 @@ |
| function DotExpression(self, name, span) { |
| this.self = self; |
| this.name = name; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(DotExpression, lang_Expression); |
| +$inherits(DotExpression, Expression); |
| DotExpression.prototype.get$name = function() { return this.name; }; |
| DotExpression.prototype.set$name = function(value) { return this.name = value; }; |
| DotExpression.prototype.visit = function(visitor) { |
| @@ -13630,10 +14148,10 @@ |
| // ********** Code for VarExpression ************** |
| function VarExpression(name, span) { |
| this.name = name; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(VarExpression, lang_Expression); |
| +$inherits(VarExpression, Expression); |
| VarExpression.prototype.get$name = function() { return this.name; }; |
| VarExpression.prototype.set$name = function(value) { return this.name = value; }; |
| VarExpression.prototype.visit = function(visitor) { |
| @@ -13641,28 +14159,28 @@ |
| } |
| // ********** Code for ThisExpression ************** |
| function ThisExpression(span) { |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ThisExpression, lang_Expression); |
| +$inherits(ThisExpression, Expression); |
| ThisExpression.prototype.visit = function(visitor) { |
| return visitor.visitThisExpression(this); |
| } |
| // ********** Code for SuperExpression ************** |
| function SuperExpression(span) { |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(SuperExpression, lang_Expression); |
| +$inherits(SuperExpression, Expression); |
| SuperExpression.prototype.visit = function(visitor) { |
| return visitor.visitSuperExpression(this); |
| } |
| // ********** Code for NullExpression ************** |
| function NullExpression(span) { |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(NullExpression, lang_Expression); |
| +$inherits(NullExpression, Expression); |
| NullExpression.prototype.visit = function(visitor) { |
| return visitor.visitNullExpression(this); |
| } |
| @@ -13671,10 +14189,10 @@ |
| this.value = value; |
| this.type = type; |
| this.text = text; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(LiteralExpression, lang_Expression); |
| +$inherits(LiteralExpression, Expression); |
| LiteralExpression.prototype.get$value = function() { return this.value; }; |
| LiteralExpression.prototype.set$value = function(value) { return this.value = value; }; |
| LiteralExpression.prototype.get$text = function() { return this.text; }; |
| @@ -13723,10 +14241,10 @@ |
| function ArgumentNode(label, value, span) { |
| this.label = label; |
| this.value = value; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(ArgumentNode, lang_Node); |
| +$inherits(ArgumentNode, Node); |
| ArgumentNode.prototype.get$value = function() { return this.value; }; |
| ArgumentNode.prototype.set$value = function(value) { return this.value = value; }; |
| ArgumentNode.prototype.visit = function(visitor) { |
| @@ -13739,10 +14257,10 @@ |
| this.type = type; |
| this.name = name; |
| this.value = value; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(FormalNode, lang_Node); |
| +$inherits(FormalNode, Node); |
| FormalNode.prototype.get$name = function() { return this.name; }; |
| FormalNode.prototype.set$name = function(value) { return this.name = value; }; |
| FormalNode.prototype.get$value = function() { return this.value; }; |
| @@ -13755,10 +14273,10 @@ |
| this.exception = exception; |
| this.trace = trace; |
| this.body = body; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(CatchNode, lang_Node); |
| +$inherits(CatchNode, Node); |
| CatchNode.prototype.visit = function(visitor) { |
| return visitor.visitCatchNode(this); |
| } |
| @@ -13767,10 +14285,10 @@ |
| this.label = label; |
| this.cases = cases; |
| this.statements = statements; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(CaseNode, lang_Node); |
| +$inherits(CaseNode, Node); |
| CaseNode.prototype.visit = function(visitor) { |
| return visitor.visitCaseNode(this); |
| } |
| @@ -13778,35 +14296,35 @@ |
| function TypeParameter(name, extendsType, span) { |
| this.name = name; |
| this.extendsType = extendsType; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(TypeParameter, lang_Node); |
| +$inherits(TypeParameter, Node); |
| TypeParameter.prototype.get$name = function() { return this.name; }; |
| TypeParameter.prototype.set$name = function(value) { return this.name = value; }; |
| TypeParameter.prototype.visit = function(visitor) { |
| return visitor.visitTypeParameter(this); |
| } |
| -// ********** Code for lang_Identifier ************** |
| -function lang_Identifier(name, span) { |
| +// ********** Code for Identifier ************** |
| +function Identifier(name, span) { |
| this.name = name; |
| - lang_Node.call(this, span); |
| + Node.call(this, span); |
| // Initializers done |
| } |
| -$inherits(lang_Identifier, lang_Node); |
| -lang_Identifier.prototype.get$name = function() { return this.name; }; |
| -lang_Identifier.prototype.set$name = function(value) { return this.name = value; }; |
| -lang_Identifier.prototype.visit = function(visitor) { |
| +$inherits(Identifier, Node); |
| +Identifier.prototype.get$name = function() { return this.name; }; |
| +Identifier.prototype.set$name = function(value) { return this.name = value; }; |
| +Identifier.prototype.visit = function(visitor) { |
| return visitor.visitIdentifier(this); |
| } |
| // ********** Code for DeclaredIdentifier ************** |
| function DeclaredIdentifier(type, name, span) { |
| this.type = type; |
| this.name = name; |
| - lang_Expression.call(this, span); |
| + Expression.call(this, span); |
| // Initializers done |
| } |
| -$inherits(DeclaredIdentifier, lang_Expression); |
| +$inherits(DeclaredIdentifier, Expression); |
| DeclaredIdentifier.prototype.get$name = function() { return this.name; }; |
| DeclaredIdentifier.prototype.set$name = function(value) { return this.name = value; }; |
| DeclaredIdentifier.prototype.visit = function(visitor) { |
| @@ -14078,86 +14596,86 @@ |
| this.output.heading('TypeReference(' + this.output.toValue(node.type) + ")", node.span); |
| } |
| TreePrinter.prototype.visitPostfixExpression$1 = TreePrinter.prototype.visitPostfixExpression; |
| -// ********** Code for lang_Type ************** |
| -function lang_Type(name) { |
| +// ********** Code for Type ************** |
| +function Type(name) { |
| this.name = name; |
| this.isTested = false; |
| // Initializers done |
| } |
| -lang_Type.prototype.get$name = function() { return this.name; }; |
| -lang_Type.prototype.markUsed = function() { |
| +Type.prototype.get$name = function() { return this.name; }; |
| +Type.prototype.markUsed = function() { |
| } |
| -lang_Type.prototype.get$typeMember = function() { |
| +Type.prototype.get$typeMember = function() { |
| if (this._typeMember == null) { |
| this._typeMember = new TypeMember(this); |
| } |
| return this._typeMember; |
| } |
| -lang_Type.prototype.getMember = function(name) { |
| +Type.prototype.getMember = function(name) { |
| return null; |
| } |
| -lang_Type.prototype.get$isVar = function() { |
| +Type.prototype.get$isVar = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isTop = function() { |
| +Type.prototype.get$isTop = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isObject = function() { |
| +Type.prototype.get$isObject = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isString = function() { |
| +Type.prototype.get$isString = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isBool = function() { |
| +Type.prototype.get$isBool = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isFunction = function() { |
| +Type.prototype.get$isFunction = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isList = function() { |
| +Type.prototype.get$isList = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isNum = function() { |
| +Type.prototype.get$isNum = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isVarOrFunction = function() { |
| +Type.prototype.get$isVarOrFunction = function() { |
| return this.get$isVar() || this.get$isFunction(); |
| } |
| -lang_Type.prototype.getCallMethod = function() { |
| +Type.prototype.getCallMethod = function() { |
| return null; |
| } |
| -lang_Type.prototype.get$isClosed = function() { |
| +Type.prototype.get$isClosed = function() { |
| return this.get$isString() || this.get$isBool() || this.get$isNum() || this.get$isFunction(); |
| } |
| -lang_Type.prototype.get$isUsed = function() { |
| +Type.prototype.get$isUsed = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isGeneric = function() { |
| +Type.prototype.get$isGeneric = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isNativeType = function() { |
| +Type.prototype.get$isNativeType = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$isNative = function() { |
| +Type.prototype.get$isNative = function() { |
| return this.get$isNativeType(); |
| } |
| -lang_Type.prototype.get$hasTypeParams = function() { |
| +Type.prototype.get$hasTypeParams = function() { |
| return false; |
| } |
| -lang_Type.prototype.get$typeofName = function() { |
| +Type.prototype.get$typeofName = function() { |
| return null; |
| } |
| -lang_Type.prototype.get$jsname = function() { |
| +Type.prototype.get$jsname = function() { |
| return this._jsname == null ? this.name : this._jsname; |
| } |
| -lang_Type.prototype.set$jsname = function(name) { |
| +Type.prototype.set$jsname = function(name) { |
| return this._jsname = name; |
| } |
| -lang_Type.prototype.getAllMembers = function() { |
| +Type.prototype.getAllMembers = function() { |
| return $map([]); |
| } |
| -lang_Type.prototype.needsVarCall = function(args) { |
| +Type.prototype.needsVarCall = function(args) { |
| if (this.get$isVarOrFunction()) { |
| return true; |
| } |
| @@ -14169,7 +14687,7 @@ |
| } |
| return false; |
| } |
| -lang_Type.union = function(x, y) { |
| +Type.union = function(x, y) { |
| if ($eq(x, y)) return x; |
| if (x.get$isNum() && y.get$isNum()) return world.numType; |
| if (x.get$isString() && y.get$isString()) return world.stringType; |
| @@ -14178,10 +14696,10 @@ |
| // ********** Code for ParameterType ************** |
| function ParameterType(name, typeParameter) { |
| this.typeParameter = typeParameter; |
| - lang_Type.call(this, name); |
| + Type.call(this, name); |
| // Initializers done |
| } |
| -$inherits(ParameterType, lang_Type); |
| +$inherits(ParameterType, Type); |
| ParameterType.prototype.get$isClass = function() { |
| return false; |
| } |
| @@ -14225,10 +14743,10 @@ |
| this.constructors = $map([]); |
| this.members = $map([]); |
| this.factories = new FactoryMap(); |
| - lang_Type.call(this, name); |
| + Type.call(this, name); |
| // Initializers done |
| } |
| -$inherits(ConcreteType, lang_Type); |
| +$inherits(ConcreteType, Type); |
| ConcreteType.prototype.get$isList = function() { |
| return this.genericType.get$isList(); |
| } |
| @@ -14382,11 +14900,11 @@ |
| this.members = $map([]); |
| this.factories = new FactoryMap(); |
| this._resolvedMembers = $map([]); |
| - lang_Type.call(this, name); |
| + Type.call(this, name); |
| // Initializers done |
| this.setDefinition(definition); |
| } |
| -$inherits(DefinedType, lang_Type); |
| +$inherits(DefinedType, Type); |
| DefinedType.prototype.get$definition = function() { return this.definition; }; |
| DefinedType.prototype.set$definition = function(value) { return this.definition = value; }; |
| DefinedType.prototype.get$library = function() { return this.library; }; |
| @@ -15070,19 +15588,19 @@ |
| return 1; |
| } |
| else if (other.dependencies.indexOf(this, 0) >= 0) { |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| else if (this.dependencies.length > other.dependencies.length) { |
| return 1; |
| } |
| else if (this.dependencies.length < other.dependencies.length) { |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| else if (this.name == null && other.name != null) { |
| return 1; |
| } |
| else if (this.name != null && other.name == null) { |
| - return -1; |
| + return -1.000000/*-1*/; |
| } |
| else if (this.name != null) { |
| return this.name.compareTo(other.name); |
| @@ -15093,16 +15611,16 @@ |
| } |
| // ********** Code for CompilerException ************** |
| function CompilerException(_message, _location) { |
| - this._message = _message; |
| + this._lang_message = _message; |
| this._location = _location; |
| // Initializers done |
| } |
| CompilerException.prototype.toString = function() { |
| if (this._location != null) { |
| - return ('CompilerException: ' + this._location.toMessageString(this._message) + ''); |
| + return ('CompilerException: ' + this._location.toMessageString(this._lang_message) + ''); |
| } |
| else { |
| - return ('CompilerException: ' + this._message + ''); |
| + return ('CompilerException: ' + this._lang_message + ''); |
| } |
| } |
| // ********** Code for World ************** |
| @@ -15240,7 +15758,7 @@ |
| var $this = this; // closure support |
| if (!options.enableLeg) return false; |
| return this.withTiming('try leg compile', (function () { |
| - return compile($this); |
| + return leg_compile($this); |
| }) |
| ); |
| } |
| @@ -15334,7 +15852,7 @@ |
| lib.resolve(); |
| } |
| } |
| -World.prototype._message = function(message, location, throwing) { |
| +World.prototype._lang_message = function(message, location, throwing) { |
| var text = message; |
| if (location != null) { |
| text = location.toMessageString(message); |
| @@ -15346,25 +15864,25 @@ |
| } |
| World.prototype.error = function(message, location) { |
| this.errors++; |
| - this._message(('error: ' + message + ''), location, options.throwOnErrors); |
| + this._lang_message(('error: ' + message + ''), location, options.throwOnErrors); |
| } |
| World.prototype.warning = function(message, location) { |
| this.warnings++; |
| if (options.showWarnings) { |
| - this._message(('warning: ' + message + ''), location, options.throwOnWarnings); |
| + this._lang_message(('warning: ' + message + ''), location, options.throwOnWarnings); |
| } |
| } |
| World.prototype.fatal = function(message, location) { |
| this.errors++; |
| this.seenFatal = true; |
| - this._message(('fatal: ' + message + ''), location, options.throwOnFatal || options.throwOnErrors); |
| + this._lang_message(('fatal: ' + message + ''), location, options.throwOnFatal || options.throwOnErrors); |
| } |
| World.prototype.internalError = function(message, location) { |
| - this._message(('We are sorry, but... ' + message + ''), location, true); |
| + this._lang_message(('We are sorry, but... ' + message + ''), location, true); |
| } |
| World.prototype.info = function(message, location) { |
| if (options.showInfo) { |
| - this._message(('info: ' + message + ''), location, false); |
| + this._lang_message(('info: ' + message + ''), location, false); |
| } |
| } |
| World.prototype.get$hasErrors = function() { |
| @@ -15418,57 +15936,68 @@ |
| this.enableLeg = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 59)) |
| case '--enable_asserts': |
| this.enableAsserts = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 63)) |
| case '--enable_type_checks': |
| this.enableTypeChecks = true; |
| this.enableAsserts = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 69)) |
| case '--verify_implements': |
| this.verifyImplements = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 73)) |
| case '--compile_all': |
| this.compileAll = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 77)) |
| case '--diet-parse': |
| this.dietParse = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 81)) |
| case '--ignore-unrecognized-flags': |
| ignoreUnrecognizedFlags = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 85)) |
| case '--verbose': |
| this.showInfo = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 89)) |
| case '--throw_on_errors': |
| this.throwOnErrors = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 93)) |
| case '--throw_on_warnings': |
| this.throwOnWarnings = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 97)) |
| case '--compile-only': |
| this.compileOnly = true; |
| continue loop; |
| + $throw(new FallThroughError("./options.dart", 102)) |
| default: |
| @@ -15538,7 +16067,7 @@ |
| world = new World(files); |
| world.init(); |
| } |
| -function lang_compile(homedir, args) { |
| +function compile(homedir, args) { |
| parseOptions(homedir, args); |
| initializeWorld(new FileSystem(options.libDir)); |
| var success = world.compile(); |
| @@ -15564,7 +16093,7 @@ |
| // ********** Code for top level ************** |
| function main() { |
| var homedir = get$path().dirname(get$fs().realpathSync(process.argv.$index(1))); |
| - if (lang_compile(homedir, process.argv)) { |
| + if (compile(homedir, process.argv)) { |
| var code = world.getGeneratedCode(); |
| if (!options.compileOnly) { |
| process.argv = [process.argv.$index(0), process.argv.$index(1)]; |
| @@ -15595,57 +16124,57 @@ |
| return this.to$call$2()($0, $1); |
| } |
| function to$call$2(f) { return f && f.to$call$2(); } |
| -var const$10 = new EmptyQueueException()/*const EmptyQueueException()*/; |
| -var const$132 = new TokenString('void')/*const TokenString('void')*/; |
| -var const$134 = new TokenString('int')/*const TokenString('int')*/; |
| -var const$136 = new TokenString('Dynamic')/*const TokenString('Dynamic')*/; |
| -var const$235 = new Keyword("break", false)/*const Keyword("break")*/; |
| -var const$237 = new Keyword("case", false)/*const Keyword("case")*/; |
| -var const$239 = new Keyword("catch", false)/*const Keyword("catch")*/; |
| -var const$241 = new Keyword("const", false)/*const Keyword("const")*/; |
| -var const$243 = new Keyword("continue", false)/*const Keyword("continue")*/; |
| -var const$245 = new Keyword("default", false)/*const Keyword("default")*/; |
| -var const$247 = new Keyword("do", false)/*const Keyword("do")*/; |
| -var const$249 = new Keyword("else", false)/*const Keyword("else")*/; |
| -var const$251 = new Keyword("false", false)/*const Keyword("false")*/; |
| -var const$253 = new Keyword("final", false)/*const Keyword("final")*/; |
| -var const$255 = new Keyword("finally", false)/*const Keyword("finally")*/; |
| -var const$257 = new Keyword("for", false)/*const Keyword("for")*/; |
| -var const$259 = new Keyword("if", false)/*const Keyword("if")*/; |
| -var const$261 = new Keyword("in", false)/*const Keyword("in")*/; |
| -var const$263 = new Keyword("is", false)/*const Keyword("is")*/; |
| -var const$265 = new Keyword("new", false)/*const Keyword("new")*/; |
| -var const$267 = new Keyword("null", false)/*const Keyword("null")*/; |
| -var const$269 = new Keyword("return", false)/*const Keyword("return")*/; |
| -var const$271 = new Keyword("super", false)/*const Keyword("super")*/; |
| -var const$273 = new Keyword("switch", false)/*const Keyword("switch")*/; |
| -var const$275 = new Keyword("this", false)/*const Keyword("this")*/; |
| -var const$277 = new Keyword("throw", false)/*const Keyword("throw")*/; |
| -var const$279 = new Keyword("true", false)/*const Keyword("true")*/; |
| -var const$281 = new Keyword("try", false)/*const Keyword("try")*/; |
| -var const$283 = new Keyword("var", false)/*const Keyword("var")*/; |
| -var const$285 = new Keyword("void", false)/*const Keyword("void")*/; |
| -var const$287 = new Keyword("while", false)/*const Keyword("while")*/; |
| -var const$289 = new Keyword("abstract", true)/*const Keyword("abstract", true)*/; |
| -var const$291 = new Keyword("assert", true)/*const Keyword("assert", true)*/; |
| -var const$293 = new Keyword("class", true)/*const Keyword("class", true)*/; |
| -var const$295 = new Keyword("extends", true)/*const Keyword("extends", true)*/; |
| -var const$297 = new Keyword("factory", true)/*const Keyword("factory", true)*/; |
| -var const$299 = new Keyword("get", true)/*const Keyword("get", true)*/; |
| -var const$301 = new Keyword("implements", true)/*const Keyword("implements", true)*/; |
| -var const$303 = new Keyword("import", true)/*const Keyword("import", true)*/; |
| -var const$305 = new Keyword("interface", true)/*const Keyword("interface", true)*/; |
| -var const$307 = new Keyword("library", true)/*const Keyword("library", true)*/; |
| -var const$309 = new Keyword("native", true)/*const Keyword("native", true)*/; |
| -var const$311 = new Keyword("negate", true)/*const Keyword("negate", true)*/; |
| -var const$313 = new Keyword("operator", true)/*const Keyword("operator", true)*/; |
| -var const$315 = new Keyword("set", true)/*const Keyword("set", true)*/; |
| -var const$317 = new Keyword("source", true)/*const Keyword("source", true)*/; |
| -var const$319 = new Keyword("static", true)/*const Keyword("static", true)*/; |
| -var const$321 = new Keyword("typedef", true)/*const Keyword("typedef", true)*/; |
| -var const$325 = new LinkTail()/*const LinkTail()*/; |
| -var const$8 = []/*const []*/; |
| -var const$9 = new NoMoreElementsException()/*const NoMoreElementsException()*/; |
| +var const$120 = []/*const []*/; |
| +var const$121 = new NoMoreElementsException()/*const NoMoreElementsException()*/; |
| +var const$122 = new EmptyQueueException()/*const EmptyQueueException()*/; |
| +var const$227 = new Keyword("break", false)/*const Keyword("break")*/; |
| +var const$229 = new Keyword("case", false)/*const Keyword("case")*/; |
| +var const$231 = new Keyword("catch", false)/*const Keyword("catch")*/; |
| +var const$233 = new Keyword("const", false)/*const Keyword("const")*/; |
| +var const$235 = new Keyword("continue", false)/*const Keyword("continue")*/; |
| +var const$237 = new Keyword("default", false)/*const Keyword("default")*/; |
| +var const$239 = new Keyword("do", false)/*const Keyword("do")*/; |
| +var const$241 = new Keyword("else", false)/*const Keyword("else")*/; |
| +var const$243 = new Keyword("false", false)/*const Keyword("false")*/; |
| +var const$245 = new Keyword("final", false)/*const Keyword("final")*/; |
| +var const$247 = new Keyword("finally", false)/*const Keyword("finally")*/; |
| +var const$249 = new Keyword("for", false)/*const Keyword("for")*/; |
| +var const$251 = new Keyword("if", false)/*const Keyword("if")*/; |
| +var const$253 = new Keyword("in", false)/*const Keyword("in")*/; |
| +var const$255 = new Keyword("is", false)/*const Keyword("is")*/; |
| +var const$257 = new Keyword("new", false)/*const Keyword("new")*/; |
| +var const$259 = new Keyword("null", false)/*const Keyword("null")*/; |
| +var const$261 = new Keyword("return", false)/*const Keyword("return")*/; |
| +var const$263 = new Keyword("super", false)/*const Keyword("super")*/; |
| +var const$265 = new Keyword("switch", false)/*const Keyword("switch")*/; |
| +var const$267 = new Keyword("this", false)/*const Keyword("this")*/; |
| +var const$269 = new Keyword("throw", false)/*const Keyword("throw")*/; |
| +var const$271 = new Keyword("true", false)/*const Keyword("true")*/; |
| +var const$273 = new Keyword("try", false)/*const Keyword("try")*/; |
| +var const$275 = new Keyword("var", false)/*const Keyword("var")*/; |
| +var const$277 = new Keyword("void", false)/*const Keyword("void")*/; |
| +var const$279 = new Keyword("while", false)/*const Keyword("while")*/; |
| +var const$281 = new Keyword("abstract", true)/*const Keyword("abstract", true)*/; |
| +var const$283 = new Keyword("assert", true)/*const Keyword("assert", true)*/; |
| +var const$285 = new Keyword("class", true)/*const Keyword("class", true)*/; |
| +var const$287 = new Keyword("extends", true)/*const Keyword("extends", true)*/; |
| +var const$289 = new Keyword("factory", true)/*const Keyword("factory", true)*/; |
| +var const$291 = new Keyword("get", true)/*const Keyword("get", true)*/; |
| +var const$293 = new Keyword("implements", true)/*const Keyword("implements", true)*/; |
| +var const$295 = new Keyword("import", true)/*const Keyword("import", true)*/; |
| +var const$297 = new Keyword("interface", true)/*const Keyword("interface", true)*/; |
| +var const$299 = new Keyword("library", true)/*const Keyword("library", true)*/; |
| +var const$301 = new Keyword("native", true)/*const Keyword("native", true)*/; |
| +var const$303 = new Keyword("negate", true)/*const Keyword("negate", true)*/; |
| +var const$305 = new Keyword("operator", true)/*const Keyword("operator", true)*/; |
| +var const$307 = new Keyword("set", true)/*const Keyword("set", true)*/; |
| +var const$309 = new Keyword("source", true)/*const Keyword("source", true)*/; |
| +var const$311 = new Keyword("static", true)/*const Keyword("static", true)*/; |
| +var const$313 = new Keyword("typedef", true)/*const Keyword("typedef", true)*/; |
| +var const$317 = new LinkTail()/*const LinkTail()*/; |
| +var const$320 = new TokenString('void')/*const TokenString('void')*/; |
| +var const$322 = new TokenString('int')/*const TokenString('int')*/; |
| +var const$324 = new TokenString('Dynamic')/*const TokenString('Dynamic')*/; |
| var $0 = 48; |
| var $1 = 49; |
| var $2 = 50; |
| @@ -15836,9 +16365,9 @@ |
| TokenKind.LPAREN = 2; |
| TokenKind.LT = 52; |
| TokenKind.LTE = 54; |
| -Duration.MILLISECONDS_PER_DAY = 86400000/*MILLISECONDS_PER_HOUR * HOURS_PER_DAY*/; |
| -Duration.MILLISECONDS_PER_HOUR = 3600000/*MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR*/; |
| -Duration.MILLISECONDS_PER_MINUTE = 60000/*MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE*/; |
| +Duration.MILLISECONDS_PER_DAY = 86400000.000000/*MILLISECONDS_PER_HOUR * HOURS_PER_DAY*/; |
| +Duration.MILLISECONDS_PER_HOUR = 3600000.000000/*MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR*/; |
| +Duration.MILLISECONDS_PER_MINUTE = 60000.000000/*MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE*/; |
| Duration.MILLISECONDS_PER_SECOND = 1000; |
| Duration.MINUTES_PER_HOUR = 60; |
| TokenKind.MOD = 47; |
| @@ -15892,54 +16421,54 @@ |
| TokenKind.WHITESPACE = 62; |
| HashMapImplementation._INITIAL_CAPACITY = 8; |
| var _SPAWNED_SIGNAL = "spawned"; |
| -var const$133 = new SimpleType(const$132)/*const SimpleType(const TokenString('void'))*/; |
| -var const$135 = new SimpleType(const$134)/*const SimpleType(const TokenString('int'))*/; |
| -var const$137 = new SimpleType(const$136)/*const SimpleType(const TokenString('Dynamic'))*/; |
| -Keyword.ABSTRACT = const$289/*const Keyword("abstract", true)*/; |
| -Keyword.ASSERT = const$291/*const Keyword("assert", true)*/; |
| -Keyword.BREAK = const$235/*const Keyword("break")*/; |
| -Keyword.CASE = const$237/*const Keyword("case")*/; |
| -Keyword.CATCH = const$239/*const Keyword("catch")*/; |
| -Keyword.CLASS = const$293/*const Keyword("class", true)*/; |
| -Keyword.CONST = const$241/*const Keyword("const")*/; |
| -Keyword.CONTINUE = const$243/*const Keyword("continue")*/; |
| -Keyword.DEFAULT = const$245/*const Keyword("default")*/; |
| -Keyword.DO = const$247/*const Keyword("do")*/; |
| -Keyword.ELSE = const$249/*const Keyword("else")*/; |
| -Keyword.EXTENDS = const$295/*const Keyword("extends", true)*/; |
| -Keyword.FACTORY = const$297/*const Keyword("factory", true)*/; |
| -Keyword.FALSE = const$251/*const Keyword("false")*/; |
| -Keyword.FINAL = const$253/*const Keyword("final")*/; |
| -Keyword.FINALLY = const$255/*const Keyword("finally")*/; |
| -Keyword.FOR = const$257/*const Keyword("for")*/; |
| -Keyword.GET = const$299/*const Keyword("get", true)*/; |
| -Keyword.IF = const$259/*const Keyword("if")*/; |
| -Keyword.IMPLEMENTS = const$301/*const Keyword("implements", true)*/; |
| -Keyword.IMPORT = const$303/*const Keyword("import", true)*/; |
| -Keyword.IN = const$261/*const Keyword("in")*/; |
| -Keyword.INTERFACE = const$305/*const Keyword("interface", true)*/; |
| -Keyword.IS = const$263/*const Keyword("is")*/; |
| -Keyword.LIBRARY = const$307/*const Keyword("library", true)*/; |
| -Keyword.NATIVE = const$309/*const Keyword("native", true)*/; |
| -Keyword.NEGATE = const$311/*const Keyword("negate", true)*/; |
| -Keyword.NEW = const$265/*const Keyword("new")*/; |
| -Keyword.NULL = const$267/*const Keyword("null")*/; |
| -Keyword.OPERATOR = const$313/*const Keyword("operator", true)*/; |
| -Keyword.RETURN = const$269/*const Keyword("return")*/; |
| -Keyword.SET = const$315/*const Keyword("set", true)*/; |
| -Keyword.SOURCE = const$317/*const Keyword("source", true)*/; |
| -Keyword.STATIC = const$319/*const Keyword("static", true)*/; |
| -Keyword.SUPER = const$271/*const Keyword("super")*/; |
| -Keyword.SWITCH = const$273/*const Keyword("switch")*/; |
| -Keyword.THIS = const$275/*const Keyword("this")*/; |
| -Keyword.THROW = const$277/*const Keyword("throw")*/; |
| -Keyword.TRUE = const$279/*const Keyword("true")*/; |
| -Keyword.TRY = const$281/*const Keyword("try")*/; |
| -Keyword.TYPEDEF = const$321/*const Keyword("typedef", true)*/; |
| -Keyword.VAR = const$283/*const Keyword("var")*/; |
| -Keyword.VOID = const$285/*const Keyword("void")*/; |
| -Keyword.WHILE = const$287/*const Keyword("while")*/; |
| -var const$323 = [const$235, const$237, const$239, const$241, const$243, const$245, const$247, const$249, const$251, const$253, const$255, const$257, const$259, const$261, const$263, const$265, const$267, const$269, const$271, const$273, const$275, const$277, const$279, const$281, const$283, const$285, const$287, const$289, const$291, const$293, const$295, const$297, const$299, const$301, const$303, const$305, const$307, const$309, const$311, const$313, const$315, const$317, const$319, const$321]/*const <Keyword> [ |
| +var const$321 = new SimpleType(const$320)/*const SimpleType(const TokenString('void'))*/; |
| +var const$323 = new SimpleType(const$322)/*const SimpleType(const TokenString('int'))*/; |
| +var const$325 = new SimpleType(const$324)/*const SimpleType(const TokenString('Dynamic'))*/; |
| +Keyword.ABSTRACT = const$281/*const Keyword("abstract", true)*/; |
| +Keyword.ASSERT = const$283/*const Keyword("assert", true)*/; |
| +Keyword.BREAK = const$227/*const Keyword("break")*/; |
| +Keyword.CASE = const$229/*const Keyword("case")*/; |
| +Keyword.CATCH = const$231/*const Keyword("catch")*/; |
| +Keyword.CLASS = const$285/*const Keyword("class", true)*/; |
| +Keyword.CONST = const$233/*const Keyword("const")*/; |
| +Keyword.CONTINUE = const$235/*const Keyword("continue")*/; |
| +Keyword.DEFAULT = const$237/*const Keyword("default")*/; |
| +Keyword.DO = const$239/*const Keyword("do")*/; |
| +Keyword.ELSE = const$241/*const Keyword("else")*/; |
| +Keyword.EXTENDS = const$287/*const Keyword("extends", true)*/; |
| +Keyword.FACTORY = const$289/*const Keyword("factory", true)*/; |
| +Keyword.FALSE = const$243/*const Keyword("false")*/; |
| +Keyword.FINAL = const$245/*const Keyword("final")*/; |
| +Keyword.FINALLY = const$247/*const Keyword("finally")*/; |
| +Keyword.FOR = const$249/*const Keyword("for")*/; |
| +Keyword.GET = const$291/*const Keyword("get", true)*/; |
| +Keyword.IF = const$251/*const Keyword("if")*/; |
| +Keyword.IMPLEMENTS = const$293/*const Keyword("implements", true)*/; |
| +Keyword.IMPORT = const$295/*const Keyword("import", true)*/; |
| +Keyword.IN = const$253/*const Keyword("in")*/; |
| +Keyword.INTERFACE = const$297/*const Keyword("interface", true)*/; |
| +Keyword.IS = const$255/*const Keyword("is")*/; |
| +Keyword.LIBRARY = const$299/*const Keyword("library", true)*/; |
| +Keyword.NATIVE = const$301/*const Keyword("native", true)*/; |
| +Keyword.NEGATE = const$303/*const Keyword("negate", true)*/; |
| +Keyword.NEW = const$257/*const Keyword("new")*/; |
| +Keyword.NULL = const$259/*const Keyword("null")*/; |
| +Keyword.OPERATOR = const$305/*const Keyword("operator", true)*/; |
| +Keyword.RETURN = const$261/*const Keyword("return")*/; |
| +Keyword.SET = const$307/*const Keyword("set", true)*/; |
| +Keyword.SOURCE = const$309/*const Keyword("source", true)*/; |
| +Keyword.STATIC = const$311/*const Keyword("static", true)*/; |
| +Keyword.SUPER = const$263/*const Keyword("super")*/; |
| +Keyword.SWITCH = const$265/*const Keyword("switch")*/; |
| +Keyword.THIS = const$267/*const Keyword("this")*/; |
| +Keyword.THROW = const$269/*const Keyword("throw")*/; |
| +Keyword.TRUE = const$271/*const Keyword("true")*/; |
| +Keyword.TRY = const$273/*const Keyword("try")*/; |
| +Keyword.TYPEDEF = const$313/*const Keyword("typedef", true)*/; |
| +Keyword.VAR = const$275/*const Keyword("var")*/; |
| +Keyword.VOID = const$277/*const Keyword("void")*/; |
| +Keyword.WHILE = const$279/*const Keyword("while")*/; |
| +var const$315 = [const$227, const$229, const$231, const$233, const$235, const$237, const$239, const$241, const$243, const$245, const$247, const$249, const$251, const$253, const$255, const$257, const$259, const$261, const$263, const$265, const$267, const$269, const$271, const$273, const$275, const$277, const$279, const$281, const$283, const$285, const$287, const$289, const$291, const$293, const$295, const$297, const$299, const$301, const$303, const$305, const$307, const$309, const$311, const$313]/*const <Keyword> [ |
| BREAK, |
| CASE, |
| CATCH, |
| @@ -15984,7 +16513,7 @@ |
| SOURCE, |
| STATIC, |
| TYPEDEF ]*/; |
| -Keyword.values = const$323/*const <Keyword> [ |
| +Keyword.values = const$315/*const <Keyword> [ |
| BREAK, |
| CASE, |
| CATCH, |