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

Unified Diff: frogsh

Issue 8343037: Throw FallThroughError when we fall through a case in a switch statement. Fixes (Closed) Base URL: http://dart.googlecode.com/svn/experimental/frog/
Patch Set: '' Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | gen.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: frogsh
===================================================================
--- frogsh (revision 917)
+++ frogsh (working copy)
@@ -302,6 +302,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;
@@ -481,7 +486,7 @@
}
ListIterator.prototype.next = function() {
if (!this.hasNext()) {
- $throw(const$9/*const NoMoreElementsException()*/);
+ $throw(const$121/*const NoMoreElementsException()*/);
}
return this._array.$index(this._pos++);
}
@@ -518,7 +523,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;
@@ -570,7 +575,7 @@
NumImplementation.prototype.compareTo = function(other) {
var thisValue = this.toDouble();
if (thisValue < other) {
- return -1;
+ return -1.000000/*-1*/;
}
else if (thisValue > other) {
return 1;
@@ -580,7 +585,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;
@@ -592,19 +597,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*/);
@@ -679,7 +684,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) {
@@ -701,7 +706,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);
}
@@ -805,7 +810,7 @@
return list;
}
HashMapImplementation.prototype.containsKey = function(key) {
- return (this._probeForLookup(key) != -1);
+ return (this._probeForLookup(key) != -1.000000/*-1*/);
}
$defineMethod(HashMapImplementation, "forEach$1", HashMapImplementation.prototype.forEach);
// ********** Code for HashMapImplementation$E$E **************
@@ -834,7 +839,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) {
@@ -856,7 +861,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);
}
@@ -940,7 +945,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() {
@@ -1060,7 +1065,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();
@@ -1074,7 +1079,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();
@@ -1092,7 +1097,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();
@@ -1295,13 +1300,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() {
@@ -1483,7 +1488,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();
@@ -1917,7 +1922,7 @@
}
function dirname(path) {
var lastSlash = path.lastIndexOf('/', path.length);
- if (lastSlash == -1) {
+ if (lastSlash == -1.000000/*-1*/) {
return '.';
}
else {
@@ -1926,7 +1931,7 @@
}
function basename(path) {
var lastSlash = path.lastIndexOf('/', path.length);
- if (lastSlash == -1) {
+ if (lastSlash == -1.000000/*-1*/) {
return path;
}
else {
@@ -1964,8 +1969,8 @@
}
Keyword.computeKeywordMap = function() {
var result = new LinkedHashMapImplementation$String$Keyword();
- for (var $i = 0;$i < const$326/*Keyword.values*/.length; $i++) {
- var keyword = const$326/*Keyword.values*/.$index($i);
+ for (var $i = 0;$i < const$316/*Keyword.values*/.length; $i++) {
+ var keyword = const$316/*Keyword.values*/.$index($i);
result.$setindex(keyword.syntax, keyword);
}
return result;
@@ -1983,10 +1988,10 @@
function KeywordState() {}
KeywordState.get$KEYWORD_STATE = function() {
if (KeywordState._KEYWORD_STATE == null) {
- var strings = new ListFactory$String(const$326/*Keyword.values*/.length);
+ var strings = new ListFactory$String(const$316/*Keyword.values*/.length);
for (var i = 0;
- i < const$326/*Keyword.values*/.length; i++) {
- strings.$setindex(i, const$326/*Keyword.values*/.$index(i).syntax);
+ i < const$316/*Keyword.values*/.length; i++) {
+ strings.$setindex(i, const$316/*Keyword.values*/.$index(i).syntax);
}
strings.sort((function (a, b) {
return a.compareTo(b);
@@ -1999,13 +2004,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;
@@ -2013,7 +2018,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 {
@@ -2068,10 +2073,10 @@
}
// ********** 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_Token(0, -1.000000/*-1*/);
// Initializers done
this.tail = this.tokens;
}
@@ -2118,10 +2123,10 @@
}
// ********** 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_Token(0, -1.000000/*-1*/);
// Initializers done
this.tail = this.tokens;
}
@@ -2164,7 +2169,7 @@
}
ArrayBasedScanner$String.prototype.tokenize = function() {
var next = this.advance();
- while (next != -1) {
+ while (next != -1.000000/*-1*/) {
next = this.bigSwitch(next);
}
return this.firstToken();
@@ -2383,8 +2388,8 @@
default:
- if (next == -1) {
- return -1;
+ if (next == -1.000000/*-1*/) {
+ return -1.000000/*-1*/;
}
if (next < 0x1f) {
$throw(this.charOffset);
@@ -2559,6 +2564,7 @@
return next;
}
+ $throw(new FallThroughError("leg/scanner/scanner.dart", 389))
default:
@@ -2802,7 +2808,7 @@
while (true) {
next = this.advance();
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
case 10/*null.$LF*/:
case 13/*null.$CR*/:
@@ -2815,7 +2821,7 @@
next = this.advance();
while (true) {
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
return next;
@@ -2825,7 +2831,7 @@
if (next == 47/*null.$SLASH*/) {
return this.advance();
}
- else if (next == -1) {
+ else if (next == -1.000000/*-1*/) {
return next;
}
break;
@@ -2863,7 +2869,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;
}
@@ -2873,7 +2879,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;
@@ -2900,7 +2906,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;
}
}
@@ -2912,14 +2918,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));
}
}
@@ -2932,7 +2938,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();
@@ -2946,7 +2952,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) {
@@ -2966,13 +2972,13 @@
// ********** Code for LinkFactory **************
function LinkFactory() {}
LinkFactory.Link$factory = function(head, tail) {
- return new LinkEntry(head, (tail == null) ? const$328/*const LinkTail()*/ : tail);
+ return new LinkEntry(head, (tail == null) ? const$318/*const LinkTail()*/ : tail);
}
LinkFactory.Link$fromList$factory = function(list) {
switch (list.length) {
case 0:
- return const$328/*const LinkTail()*/;
+ return const$318/*const LinkTail()*/;
case 1:
@@ -3023,7 +3029,7 @@
return null;
}
LinkTail.prototype.toList = function() {
- return const$8/*const <HInstruction>[]*/;
+ return const$120/*const <HInstruction>[]*/;
}
LinkTail.prototype.isEmpty = function() {
return true;
@@ -3071,7 +3077,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();
@@ -3290,8 +3296,8 @@
default:
- if (next == -1) {
- return -1;
+ if (next == -1.000000/*-1*/) {
+ return -1.000000/*-1*/;
}
if (next < 0x1f) {
$throw(this.get$charOffset());
@@ -3466,6 +3472,7 @@
return next;
}
+ $throw(new FallThroughError("leg/scanner/scanner.dart", 389))
default:
@@ -3709,7 +3716,7 @@
while (true) {
next = this.advance();
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
case 10/*null.$LF*/:
case 13/*null.$CR*/:
@@ -3722,7 +3729,7 @@
next = this.advance();
while (true) {
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
return next;
@@ -3732,7 +3739,7 @@
if (next == 47/*null.$SLASH*/) {
return this.advance();
}
- else if (next == -1) {
+ else if (next == -1.000000/*-1*/) {
return next;
}
break;
@@ -3770,7 +3777,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;
}
@@ -3780,7 +3787,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;
@@ -3807,7 +3814,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;
}
}
@@ -3819,14 +3826,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()));
}
}
@@ -3839,7 +3846,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();
@@ -3853,7 +3860,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) {
@@ -3873,7 +3880,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();
@@ -4092,8 +4099,8 @@
default:
- if (next == -1) {
- return -1;
+ if (next == -1.000000/*-1*/) {
+ return -1.000000/*-1*/;
}
if (next < 0x1f) {
$throw(this.get$charOffset());
@@ -4268,6 +4275,7 @@
return next;
}
+ $throw(new FallThroughError("leg/scanner/scanner.dart", 389))
default:
@@ -4511,7 +4519,7 @@
while (true) {
next = this.advance();
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
case 10/*null.$LF*/:
case 13/*null.$CR*/:
@@ -4524,7 +4532,7 @@
next = this.advance();
while (true) {
switch (next) {
- case -1:
+ case -1.000000/*-1*/:
return next;
@@ -4534,7 +4542,7 @@
if (next == 47/*null.$SLASH*/) {
return this.advance();
}
- else if (next == -1) {
+ else if (next == -1.000000/*-1*/) {
return next;
}
break;
@@ -4572,7 +4580,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;
}
@@ -4582,7 +4590,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;
@@ -4609,7 +4617,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;
}
}
@@ -4621,14 +4629,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()));
}
}
@@ -4641,7 +4649,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();
@@ -4655,7 +4663,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) {
@@ -4674,40 +4682,40 @@
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$308/*Keyword.INTERFACE*/:
+ case const$298/*Keyword.INTERFACE*/:
token = this.parseInterface(token);
break;
- case const$296/*Keyword.CLASS*/:
+ case const$286/*Keyword.CLASS*/:
token = this.parseClass(token);
break;
- case const$324/*Keyword.TYPEDEF*/:
+ case const$314/*Keyword.TYPEDEF*/:
token = this.parseNamedFunctionAlias(token);
break;
- case const$338/*const SourceString("#")*/:
+ case const$328/*const SourceString("#")*/:
token = this.parseLibraryTags(token);
break;
@@ -4720,7 +4728,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);
@@ -4728,44 +4736,44 @@
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);
token = this.parseTypeVariablesOpt(token);
token = this.parseParameters(token);
this.listener.endFunctionTypeAlias(token);
- return this.expect(const$337/*const SourceString(";")*/, token);
+ return this.expect(const$327/*const SourceString(";")*/, token);
}
-Parser.prototype.parseReturnTypeOpt = function(token) {
- if ($eq(token.get$value(), const$288/*Keyword.VOID*/)) {
+scanner_Parser.prototype.parseReturnTypeOpt = function(token) {
+ if ($eq(token.get$value(), const$278/*Keyword.VOID*/)) {
return this.next(token);
}
else {
return this.parseTypeOpt(token);
}
}
-Parser.prototype.parseParameters = function(token) {
- this.expect(const$335/*const SourceString("(")*/, token);
- if (this.optional(const$336/*const SourceString(")")*/, this.next(token))) {
+scanner_Parser.prototype.parseParameters = function(token) {
+ this.expect(const$325/*const SourceString("(")*/, token);
+ if (this.optional(const$326/*const SourceString(")")*/, this.next(token))) {
return this.next(this.next(token));
}
do {
token = this.parseTypeOpt(this.next(token));
token = this.parseIdentifier(token);
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
- return this.expect(const$336/*const SourceString(")")*/, token);
+ while (this.optional(const$321/*const SourceString(",")*/, token))
+ return this.expect(const$326/*const SourceString(")")*/, token);
}
-Parser.prototype.parseTypeOpt = function(token) {
+scanner_Parser.prototype.parseTypeOpt = function(token) {
switch (true) {
- case this.optional(const$329/*const SourceString("<")*/, this.next(token)):
- case this.optional(const$330/*const SourceString(".")*/, this.next(token)):
+ case this.optional(const$319/*const SourceString("<")*/, this.next(token)):
+ case this.optional(const$320/*const SourceString(".")*/, this.next(token)):
case this.isIdentifier(this.next(token)):
return this.parseType(token);
@@ -4776,7 +4784,7 @@
}
}
-Parser.prototype.isIdentifier = function(token) {
+scanner_Parser.prototype.isIdentifier = function(token) {
switch (token.kind) {
case 97/*null.$a*/:
@@ -4792,23 +4800,23 @@
}
}
-Parser.prototype.parseSupertypesClauseOpt = function(token) {
- if (this.optional(const$298/*Keyword.EXTENDS*/, token)) {
+scanner_Parser.prototype.parseSupertypesClauseOpt = function(token) {
+ if (this.optional(const$288/*Keyword.EXTENDS*/, token)) {
do {
token = this.parseType(this.next(token));
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
+ while (this.optional(const$321/*const SourceString(",")*/, token))
}
return token;
}
-Parser.prototype.parseFactoryClauseOpt = function(token) {
- if (this.optional(const$300/*Keyword.FACTORY*/, token)) {
+scanner_Parser.prototype.parseFactoryClauseOpt = function(token) {
+ if (this.optional(const$290/*Keyword.FACTORY*/, token)) {
return this.parseType(this.next(token));
}
return token;
}
-Parser.prototype.skipBlock = function(token) {
- if (!this.optional(const$333/*const SourceString("{")*/, token)) return this.listener.expectedBlock(token);
+scanner_Parser.prototype.skipBlock = function(token) {
+ if (!this.optional(const$323/*const SourceString("{")*/, token)) return this.listener.expectedBlock(token);
token = this.next(token);
var nesting = 1;
do {
@@ -4832,7 +4840,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);
@@ -4841,13 +4849,13 @@
token = this.parseNativeClassClauseOpt(token);
return this.parseClassBody(token);
}
-Parser.prototype.parseNativeClassClauseOpt = function(token) {
- if (this.optional(const$312/*Keyword.NATIVE*/, token)) {
+scanner_Parser.prototype.parseNativeClassClauseOpt = function(token) {
+ if (this.optional(const$302/*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*/:
@@ -4856,11 +4864,11 @@
default:
- return this.listener.expected(const$334/*const SourceString("string")*/, token);
+ return this.listener.expected(const$324/*const SourceString("string")*/, token);
}
}
-Parser.prototype.parseIdentifier = function(token) {
+scanner_Parser.prototype.parseIdentifier = function(token) {
if (this.isIdentifier(token)) {
this.listener.identifier(token);
}
@@ -4869,43 +4877,43 @@
}
return this.next(token);
}
-Parser.prototype.parseTypeVariablesOpt = function(token) {
- if (!this.optional(const$329/*const SourceString("<")*/, token)) {
+scanner_Parser.prototype.parseTypeVariablesOpt = function(token) {
+ if (!this.optional(const$319/*const SourceString("<")*/, token)) {
return token;
}
this.listener.beginTypeVariables(token);
do {
token = this.parseTypeVariable(this.next(token));
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
- return this.expect(const$332/*const SourceString(">")*/, token);
+ while (this.optional(const$321/*const SourceString(",")*/, token))
+ return this.expect(const$322/*const SourceString(">")*/, token);
}
-Parser.prototype.expect = function(string, token) {
+scanner_Parser.prototype.expect = function(string, token) {
if ($ne(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$298/*Keyword.EXTENDS*/, token)) {
+scanner_Parser.prototype.parseSuperclassClauseOpt = function(token) {
+ if (this.optional(const$288/*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);
- while (this.optional(const$330/*const SourceString(".")*/, token)) {
+ while (this.optional(const$320/*const SourceString(".")*/, token)) {
token = this.parseIdentifier(this.next(token));
}
}
@@ -4914,32 +4922,32 @@
}
return this.parseTypeArgumentsOpt(token);
}
-Parser.prototype.parseTypeArgumentsOpt = function(token) {
- if (this.optional(const$329/*const SourceString("<")*/, token)) {
+scanner_Parser.prototype.parseTypeArgumentsOpt = function(token) {
+ if (this.optional(const$319/*const SourceString("<")*/, token)) {
this.listener.beginTypeArguments(this.next(token));
do {
token = this.parseType(this.next(token));
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
- return this.expect(const$332/*const SourceString(">")*/, token);
+ while (this.optional(const$321/*const SourceString(",")*/, token))
+ return this.expect(const$322/*const SourceString(">")*/, token);
}
return token;
}
-Parser.prototype.parseImplementsOpt = function(token) {
- if (this.optional(const$304/*Keyword.IMPLEMENTS*/, token)) {
+scanner_Parser.prototype.parseImplementsOpt = function(token) {
+ if (this.optional(const$294/*Keyword.IMPLEMENTS*/, token)) {
do {
token = this.parseType(this.next(token));
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
+ while (this.optional(const$321/*const SourceString(",")*/, token))
}
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;
@@ -4961,10 +4969,10 @@
}
}
token = this.parseIdentifier(previous);
- if (this.optional(const$335/*const SourceString("(")*/, token)) {
+ if (this.optional(const$325/*const SourceString("(")*/, token)) {
this.listener.topLevelMethod(start);
}
- else if (this.optional(const$339/*const SourceString("=")*/, token) || this.optional(const$337/*const SourceString(";")*/, token)) {
+ else if (this.optional(const$329/*const SourceString("=")*/, token) || this.optional(const$327/*const SourceString(";")*/, token)) {
this.listener.topLevelField(start);
}
else {
@@ -4973,28 +4981,28 @@
while (token != null && token.kind != 123/*null.$LBRACE*/ && token.kind != 59/*null.$SEMICOLON*/) {
token = this.next(token);
}
- if (!this.optional(const$337/*const SourceString(";")*/, token)) {
+ if (!this.optional(const$327/*const SourceString(";")*/, token)) {
token = this.skipBlock(token);
}
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(const$335/*const SourceString("(")*/, token);
+ token = this.expect(const$325/*const SourceString("(")*/, token);
while (token != null && token.kind != 40/*null.$LPAREN*/ && token.kind != 41/*null.$RPAREN*/) {
token = this.next(token);
}
- token = this.expect(const$336/*const SourceString(")")*/, token);
- return this.expect(const$337/*const SourceString(";")*/, token);
+ token = this.expect(const$326/*const SourceString(")")*/, token);
+ return this.expect(const$327/*const SourceString(";")*/, token);
}
// ********** Code for BodyParser **************
function BodyParser(listener) {
- Parser.call(this, listener);
+ scanner_Parser.call(this, listener);
// Initializers done
}
-$inherits(BodyParser, Parser);
+$inherits(BodyParser, scanner_Parser);
BodyParser.prototype.parseMethod = function(token) {
token = this.parseReturnType(token);
token = this.parseIdentifier(token);
@@ -5002,38 +5010,38 @@
return this.parseMethodBody(token);
}
BodyParser.prototype.parseReturnType = function(token) {
- if (this.optional(const$288/*Keyword.VOID*/, token)) {
+ if (this.optional(const$278/*Keyword.VOID*/, token)) {
return token.next;
}
return this.parseType(token);
}
BodyParser.prototype.parseFormalParameters = function(token) {
this.listener.beginArguments(token);
- this.expect(const$335/*const SourceString("(")*/, token);
- if (this.optional(const$336/*const SourceString(")")*/, token.next)) {
+ this.expect(const$325/*const SourceString("(")*/, token);
+ if (this.optional(const$326/*const SourceString(")")*/, token.next)) {
return token.next.next;
}
do {
token = this.parseType(this.next(token));
token = this.parseIdentifier(token);
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
- return this.expect(const$336/*const SourceString(")")*/, token);
+ while (this.optional(const$321/*const SourceString(",")*/, token))
+ return this.expect(const$326/*const SourceString(")")*/, token);
}
BodyParser.prototype.parseMethodBody = function(token) {
- if (this.optional(const$337/*const SourceString(";")*/, token)) {
+ if (this.optional(const$327/*const SourceString(";")*/, token)) {
return token.next;
}
- token = this.checkEof(this.expect(const$333/*const SourceString("{")*/, token));
- while (!this.optional(const$340/*const SourceString("}")*/, token)) {
+ token = this.checkEof(this.expect(const$323/*const SourceString("{")*/, token));
+ while (!this.optional(const$330/*const SourceString("}")*/, token)) {
token = this.parseStatement(token);
}
- return this.expect(const$340/*const SourceString("}")*/, token);
+ return this.expect(const$330/*const SourceString("}")*/, token);
}
BodyParser.prototype.parseStatement = function(token) {
this.checkEof(token);
switch (token.get$value()) {
- case const$272/*Keyword.RETURN*/:
+ case const$262/*Keyword.RETURN*/:
token = this.expectSemicolon(this.parseReturnStatement(token));
break;
@@ -5048,7 +5056,7 @@
return token;
}
BodyParser.prototype.expectSemicolon = function(token) {
- return this.expect(const$337/*const SourceString(";")*/, token);
+ return this.expect(const$327/*const SourceString(";")*/, token);
}
BodyParser.prototype.parseReturnStatement = function(token) {
this.listener.beginReturnStatement(token);
@@ -5079,13 +5087,13 @@
return token.next;
}
BodyParser.prototype.parseArgumentsOpt = function(token) {
- if (this.optional(const$335/*const SourceString("(")*/, token)) {
+ if (this.optional(const$325/*const SourceString("(")*/, token)) {
this.listener.beginArguments(token);
do {
token = this.parseExpression(this.next(token));
}
- while (this.optional(const$331/*const SourceString(",")*/, token))
- return this.expect(const$336/*const SourceString(")")*/, token);
+ while (this.optional(const$321/*const SourceString(",")*/, token))
+ return this.expect(const$326/*const SourceString(")")*/, token);
}
return token;
}
@@ -5149,7 +5157,7 @@
}
Listener.prototype.identifier = function(token) {
- this.previousIdentifier = new Identifier(token);
+ this.previousIdentifier = new tree_Identifier(token);
}
Listener.prototype.beginTypeArguments = function(token) {
@@ -5248,7 +5256,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);
@@ -5260,22 +5268,22 @@
this.tail.next = new StringToken(kind, value, this.tokenStart);
this.tail = this.tail.next;
}
-// ********** Code for Token **************
-function Token(kind, charOffset) {
+// ********** Code for scanner_Token **************
+function scanner_Token(kind, charOffset) {
this.kind = kind;
this.charOffset = charOffset;
// Initializers done
}
-Token.prototype.toString = function() {
+scanner_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_Token.call(this, 107/*null.$k*/, charOffset);
// Initializers done
}
-$inherits(KeywordToken, Token);
+$inherits(KeywordToken, scanner_Token);
KeywordToken.prototype.get$value = function() { return this.value; };
KeywordToken.prototype.toString = function() {
return this.value.syntax;
@@ -5283,10 +5291,10 @@
// ********** Code for StringToken **************
function StringToken(kind, value, charOffset) {
this.value = new StringWrapper(value);
- Token.call(this, kind, charOffset);
+ scanner_Token.call(this, kind, charOffset);
// Initializers done
}
-$inherits(StringToken, Token);
+$inherits(StringToken, scanner_Token);
StringToken.prototype.get$value = function() { return this.value; };
StringToken.prototype.toString = function() {
return this.value.toString();
@@ -5308,20 +5316,20 @@
}
// ********** Code for top level **************
// ********** Library tree **************
-// ********** 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"
@@ -5330,7 +5338,7 @@
this.argumentsNode = argumentsNode;
// Initializers done
}
-$inherits(Invocation, Expression);
+$inherits(Invocation, tree_Expression);
Invocation.prototype.get$arguments = function() {
return this.argumentsNode.nodes;
}
@@ -5338,10 +5346,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"
@@ -5351,7 +5359,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);
@@ -5364,7 +5372,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);
@@ -5378,7 +5386,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; };
@@ -5391,7 +5399,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 + "");
@@ -5399,34 +5407,34 @@
Literal.prototype.accept = function(visitor) {
return visitor.visitLiteral(this);
}
-// ********** Code for Identifier **************
-function Identifier(token) {
+// ********** Code for tree_Identifier **************
+function tree_Identifier(token) {
this.token = token;
// Initializers done
}
-Identifier.fromString$ctor = function(string) {
- this.token = new StringToken(97, string, -1);
+tree_Identifier.fromString$ctor = function(string) {
+ this.token = new StringToken(97, string, -1.000000/*-1*/);
// Initializers done
}
-Identifier.fromString$ctor.prototype = Identifier.prototype;
-$inherits(Identifier, Expression);
-Identifier.prototype.get$debugString = function() {
+tree_Identifier.fromString$ctor.prototype = tree_Identifier.prototype;
+$inherits(tree_Identifier, tree_Expression);
+tree_Identifier.prototype.get$debugString = function() {
return this.get$name().toString();
}
-Identifier.prototype.get$name = function() {
+tree_Identifier.prototype.get$name = function() {
return this.token.get$value();
}
-Identifier.prototype.accept = function(visitor) {
+tree_Identifier.prototype.accept = function(visitor) {
return visitor.visitIdentifier(this);
}
// ********** Code for Operator **************
function Operator() {}
Operator.fromString$ctor = function(string) {
- Identifier.fromString$ctor.call(this, string);
+ tree_Identifier.fromString$ctor.call(this, string);
// Initializers done
}
Operator.fromString$ctor.prototype = Operator.prototype;
-$inherits(Operator, Identifier);
+$inherits(Operator, tree_Identifier);
Operator.prototype.accept = function(visitor) {
return visitor.visitOperator(this);
}
@@ -5436,21 +5444,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 **************
@@ -5458,7 +5466,7 @@
this.typeName = typeName;
// Initializers done
}
-$inherits(TypeAnnotation, Node);
+$inherits(TypeAnnotation, tree_Node);
TypeAnnotation.prototype.get$typeName = function() { return this.typeName; };
TypeAnnotation.prototype.get$debugString = function() {
return ("" + this.typeName + "");
@@ -5606,7 +5614,7 @@
this._canBeGeneratedAtUseSite = true;
}
HInstruction.prototype.get$usedBy = function() {
- if (this._usedBy == null) return const$8/*const <HInstruction>[]*/;
+ if (this._usedBy == null) return const$120/*const <HInstruction>[]*/;
return this._usedBy;
}
HInstruction.prototype.isInBasicBlock = function() {
@@ -6086,14 +6094,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(ParserStage.newElement('main', node));
}
else if ((text == 'void foo ( ) { return 3 + 4 ; }') && text2 == 'void 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(ParserStage.newElement('main', node));
@@ -6123,7 +6131,7 @@
})
);
var listener = new Listener(this.pipeline);
- var parser = new Parser(listener);
+ var parser = new scanner_Parser(listener);
this.pipeline.world.withTiming('[leg] parsing', (function () {
return parser.parseUnit(tokens);
})
@@ -6136,7 +6144,7 @@
return new NodeList(null, LinkFactory.Link$fromList$factory(expressions), null, null);
}
ParserStage.newIdentifier = function(name) {
- return new Identifier.fromString$ctor(name);
+ return new tree_Identifier.fromString$ctor(name);
}
ParserStage.newOperator = function(name) {
return new Operator.fromString$ctor(name);
@@ -6322,7 +6330,7 @@
var target = this.pipeline.universe.find(selector.get$name());
if (target == null) {
var name = selector.get$name();
- if ($eq(name, const$139/*const SourceString('print')*/) || $eq(name, const$140/*const SourceString('+')*/)) {
+ if ($eq(name, const$333/*const SourceString('print')*/) || $eq(name, const$334/*const SourceString('+')*/)) {
}
else {
this.fail(node);
@@ -6395,9 +6403,9 @@
FunctionType.prototype.get$returnType = function() { return this.returnType; };
// ********** Code for Types **************
function Types() {
- this.VOID = const$134/*const SimpleType(const SourceString('void'))*/
- this.INT = const$136/*const SimpleType(const SourceString('int'))*/
- this.DYNAMIC = const$138/*const SimpleType(const SourceString('Dynamic'))*/
+ this.VOID = const$337/*const SimpleType(const SourceString('void'))*/
+ this.INT = const$339/*const SimpleType(const SourceString('int'))*/
+ this.DYNAMIC = const$341/*const SimpleType(const SourceString('Dynamic'))*/
// Initializers done
}
Types.prototype.isSubtype = function(r, s) {
@@ -6478,7 +6486,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);
@@ -6511,7 +6519,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++) {
@@ -6808,7 +6816,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() {
@@ -7250,6 +7258,7 @@
else {
if (body != null) body.visit(this);
}
+ return false;
}
MethodGenerator.prototype._pushBlock = function(reentrant) {
this._scope = new BlockScope(this, this._scope, reentrant);
@@ -7287,8 +7296,9 @@
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());
+ return false;
}
MethodGenerator.prototype.visitVariableDefinition = function(node) {
var isFinal = false;
@@ -7322,12 +7332,14 @@
}
}
this.writer.writeln(';');
+ return false;
}
MethodGenerator.prototype.visitFunctionDefinition = function(node) {
var name = world.toJsIdentifier(node.name.name);
var meth = this._makeLambdaMethod(name, node);
var funcValue = this._scope.create(name, meth.get$functionType(), this.method.get$definition());
meth.generator.writeDefinition(this.writer, null);
+ return false;
}
MethodGenerator.prototype.visitReturnStatement = function(node) {
if (node.value == null) {
@@ -7339,6 +7351,7 @@
}
this.writer.writeln(('return ' + this.visitValue(node.value).code + ';'));
}
+ return true;
}
MethodGenerator.prototype.visitThrowStatement = function(node) {
if (node.value != null) {
@@ -7355,6 +7368,7 @@
this.writer.writeln(('throw ' + rethrow.code + ';'));
}
}
+ return true;
}
MethodGenerator.prototype.visitAssertStatement = function(node) {
var test = this.visitValue(node.test);
@@ -7368,6 +7382,7 @@
var column = span.file.getColumn(line, span.start);
this.writer.writeln(('\$assert(' + test.code + ', "' + MethodGenerator._escapeString(span.get$text()) + '",') + (' "' + span.file.filename + '", ' + (line + 1) + ', ' + (column + 1) + ');'));
}
+ return false;
}
MethodGenerator.prototype.visitBreakStatement = function(node) {
if (node.label == null) {
@@ -7376,6 +7391,7 @@
else {
this.writer.writeln(('break ' + node.label.name + ';'));
}
+ return true;
}
MethodGenerator.prototype.visitContinueStatement = function(node) {
if (node.label == null) {
@@ -7384,15 +7400,19 @@
else {
this.writer.writeln(('continue ' + node.label.name + ';'));
}
+ return true;
}
MethodGenerator.prototype.visitIfStatement = function(node) {
var test = this.visitBool(node.test);
this.writer.write(('if (' + test.code + ') '));
- node.trueBranch.visit(this);
+ var exit1 = node.trueBranch.visit(this);
if (node.falseBranch != null) {
this.writer.write('else ');
- node.falseBranch.visit(this);
+ if (node.falseBranch.visit(this) && exit1) {
+ return true;
+ }
}
+ return false;
}
MethodGenerator.prototype.visitWhileStatement = function(node) {
var test = this.visitBool(node.test);
@@ -7400,6 +7420,7 @@
this._pushBlock(true);
node.body.visit(this);
this._popBlock();
+ return false;
}
MethodGenerator.prototype.visitDoStatement = function(node) {
this.writer.write('do ');
@@ -7408,6 +7429,7 @@
this._popBlock();
var test = this.visitBool(node.test);
this.writer.writeln(('while (' + test.code + ')'));
+ return false;
}
MethodGenerator.prototype.visitForStatement = function(node) {
this._pushBlock(false);
@@ -7435,6 +7457,7 @@
node.body.visit(this);
this._popBlock();
this._popBlock();
+ return false;
}
MethodGenerator.prototype.visitForInStatement = function(node) {
var itemType = this.method.resolveType(node.item.type);
@@ -7467,6 +7490,7 @@
this.visitStatementsInBlock(node.body);
this.writer.exitBlock('}');
this._popBlock();
+ return false;
}
MethodGenerator.prototype.visitTryStatement = function(node) {
this.writer.enterBlock('try {');
@@ -7545,6 +7569,7 @@
this._popBlock();
}
this.writer.exitBlock('}');
+ return false;
}
MethodGenerator.prototype.visitSwitchStatement = function(node) {
var test = this.visitValue(node.test);
@@ -7571,33 +7596,40 @@
}
}
this.writer.enterBlock('');
- var $list0 = case_.statements;
- for (var $i0 = case_.statements.iterator(); $i0.hasNext(); ) {
- var stmt = $i0.next();
- stmt.visit(this);
- }
- if ($ne(case_, node.cases.$index(node.cases.length - 1))) {
+ var caseExits = this._visitAllStatements(case_.statements, false);
+ if ($ne(case_, node.cases.$index(node.cases.length - 1)) && !caseExits) {
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();
}
this.writer.exitBlock('}');
+ return false;
}
+MethodGenerator.prototype._visitAllStatements = function(statementList, exits) {
+ for (var i = 0;
+ i < statementList.length; i++) {
+ var stmt = statementList.$index(i);
+ exits = stmt.visit(this);
+ if ($ne(stmt, statementList.$index(statementList.length - 1)) && exits) {
+ world.warning('unreachable code', statementList.$index(i + 1).get$span());
+ }
+ }
+ return exits;
+}
MethodGenerator.prototype.visitBlockStatement = function(node) {
this._pushBlock(false);
this.writer.enterBlock('{');
- var $list = node.body;
- for (var $i = 0;$i < $list.length; $i++) {
- var stmt = $list.$index($i);
- stmt.visit(this);
- }
+ var exits = this._visitAllStatements(node.body, false);
this.writer.exitBlock('}');
this._popBlock();
+ return exits;
}
MethodGenerator.prototype.visitLabeledStatement = function(node) {
this.writer.writeln(('' + node.name.name + ':'));
node.body.visit(this);
+ return false;
}
MethodGenerator.prototype.visitExpressionStatement = function(node) {
if ((node.body instanceof VarExpression) || (node.body instanceof ThisExpression)) {
@@ -7605,9 +7637,11 @@
}
var value = this.visitVoid(node.body);
this.writer.writeln(('' + value.code + ';'));
+ return false;
}
MethodGenerator.prototype.visitEmptyStatement = function(node) {
this.writer.writeln(';');
+ return false;
}
MethodGenerator.prototype._checkNonStatic = function(node) {
if (this.method.get$isStatic()) {
@@ -7754,7 +7788,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);
@@ -8060,7 +8094,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);
@@ -8196,7 +8230,7 @@
return i;
}
}
- return -1;
+ return -1.000000/*-1*/;
}
Arguments.prototype.getValue = function(name) {
var i = this.getIndexOfName(name);
@@ -8455,7 +8489,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);
@@ -9663,7 +9697,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;
@@ -9693,7 +9727,7 @@
var returnType = reduce(map(targets, (function (t) {
return t.get$returnType();
})
- ), lang_Type.union);
+ ), Type.union);
stub = new VarMethodSet(stubName, targets, args, returnType);
world.objectType.varStubs.$setindex(stubName, stub);
}
@@ -9728,18 +9762,18 @@
);
}
$defineMethod(FactoryMap, "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)) {
@@ -9752,7 +9786,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 **************
@@ -9852,7 +9886,7 @@
this.previous = previous;
this.quote = quote;
this.isMultiline = isMultiline;
- this.depth = -1;
+ this.depth = -1.000000/*-1*/;
// Initializers done
}
InterpStack.prototype.pop = function() {
@@ -9903,7 +9937,7 @@
}
}
TokenizerBase.prototype._finishToken = function(kind) {
- return new lang_Token(kind, this._source, this._startIndex, this._lang_index);
+ return new Token(kind, this._source, this._startIndex, this._lang_index);
}
TokenizerBase.prototype._errorToken = function() {
return this._finishToken(64/*TokenKind.ERROR*/);
@@ -10041,7 +10075,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 {
@@ -10155,7 +10189,7 @@
return true;
}
- var n = lang_Parser.parseHex(hex);
+ var n = Parser.parseHex(hex);
return n < 0xD800 || n > 0xDFFF && n <= 0x10FFFF;
}
TokenizerBase.prototype.finishDot = function() {
@@ -10175,7 +10209,7 @@
}
}
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*/) {
@@ -11346,7 +11380,7 @@
default:
- return -1;
+ return -1.000000/*-1*/;
}
}
@@ -11525,12 +11559,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
@@ -11539,7 +11573,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;
@@ -11548,21 +11582,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();
@@ -11572,26 +11606,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) {
@@ -11609,10 +11643,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*/)) {
@@ -11623,7 +11657,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();
@@ -11631,7 +11665,7 @@
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*/:
@@ -11651,7 +11685,7 @@
}
}
-lang_Parser.prototype.classDefinition = function(kind) {
+Parser.prototype.classDefinition = function(kind) {
var start = this._peekToken.start;
this._eat(kind);
var name = this.identifier();
@@ -11687,7 +11721,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);
@@ -11700,7 +11734,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 {
@@ -11710,7 +11744,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();
@@ -11745,7 +11779,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*/)) {
@@ -11760,7 +11794,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*/:
@@ -11793,7 +11827,7 @@
}
}
-lang_Parser.prototype.declaration = function() {
+Parser.prototype.declaration = function() {
var start = this._peekToken.start;
if (this._peekKind(74/*TokenKind.FACTORY*/)) {
return this.factoryConstructorDeclaration();
@@ -11801,7 +11835,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()];
@@ -11822,11 +11856,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());
@@ -11835,7 +11869,7 @@
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*/:
@@ -11903,7 +11937,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);
@@ -11940,16 +11974,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 = [];
@@ -11959,12 +11993,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();
@@ -11975,14 +12009,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();
@@ -11991,7 +12025,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*/);
@@ -12015,7 +12049,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;
}
@@ -12037,13 +12071,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();
@@ -12057,7 +12091,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*/);
@@ -12070,7 +12104,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();
@@ -12081,16 +12115,16 @@
}
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()) {
+ label = this.identifier();
this._eat(8/*TokenKind.COLON*/);
- label = this.identifier();
}
var cases = [];
while (true) {
@@ -12116,7 +12150,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;
@@ -12129,7 +12163,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;
@@ -12142,7 +12176,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*/);
@@ -12151,7 +12185,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;
@@ -12161,7 +12195,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;
@@ -12171,10 +12205,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());
}
@@ -12194,14 +12228,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);
@@ -12226,7 +12260,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());
@@ -12259,7 +12293,7 @@
}
return x;
}
-lang_Parser.prototype._isPrefixUnaryOperator = function(kind) {
+Parser.prototype._isPrefixUnaryOperator = function(kind) {
switch (kind) {
case 42/*TokenKind.ADD*/:
case 43/*TokenKind.SUB*/:
@@ -12276,7 +12310,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();
@@ -12285,12 +12319,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*/)) {
@@ -12299,7 +12333,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*/)) {
@@ -12311,10 +12345,10 @@
}
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*/:
@@ -12358,19 +12392,19 @@
}
}
-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*/:
@@ -12435,7 +12469,7 @@
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));
case 60/*TokenKind.NUMBER*/:
@@ -12469,7 +12503,7 @@
}
}
-lang_Parser.prototype.stringInterpolation = function() {
+Parser.prototype.stringInterpolation = function() {
var start = this._peekToken.start;
var lits = [];
var startQuote = null, endQuote = null;
@@ -12508,14 +12542,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());
@@ -12530,7 +12564,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*/))) {
@@ -12549,10 +12583,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()) {
@@ -12619,9 +12653,9 @@
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);
@@ -12642,7 +12676,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;
}
@@ -12653,28 +12687,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));
}
@@ -12690,7 +12724,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*/)) {
@@ -12705,7 +12739,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);
@@ -12719,7 +12753,7 @@
this._errorExpected('array or map literal');
}
}
-lang_Parser.prototype._readModifiers = function() {
+Parser.prototype._readModifiers = function() {
var modifiers = null;
while (true) {
switch (this._peek()) {
@@ -12741,7 +12775,7 @@
}
return null;
}
-lang_Parser.prototype.typeParameter = function() {
+Parser.prototype.typeParameter = function() {
var start = this._peekToken.start;
var name = this.identifier();
var myType = null;
@@ -12750,7 +12784,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 = [];
@@ -12768,10 +12802,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;
}
@@ -12786,12 +12820,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);
@@ -12810,7 +12844,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));
@@ -12818,7 +12852,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;
@@ -12858,7 +12892,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;
@@ -12882,7 +12916,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;
@@ -12907,14 +12941,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)) {
@@ -12937,7 +12971,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());
}
@@ -12958,7 +12992,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());
}
@@ -12967,7 +13001,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++) {
@@ -12979,7 +13013,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++) {
@@ -13022,7 +13056,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());
}
@@ -13034,7 +13068,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();
}
@@ -13043,41 +13077,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);
}
@@ -13100,7 +13134,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) {
@@ -13231,10 +13265,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) {
@@ -13243,10 +13277,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) {
@@ -13255,30 +13289,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);
}
@@ -13287,10 +13321,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);
}
@@ -13298,10 +13332,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);
}
@@ -13309,10 +13343,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);
}
@@ -13322,10 +13356,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);
}
@@ -13334,10 +13368,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);
}
@@ -13346,10 +13380,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);
}
@@ -13357,20 +13391,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);
}
@@ -13378,60 +13412,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);
}
@@ -13439,10 +13473,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) {
@@ -13452,10 +13486,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);
}
@@ -13464,10 +13498,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);
}
@@ -13475,10 +13509,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);
}
@@ -13486,30 +13520,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 **************
@@ -13517,10 +13551,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) {
@@ -13531,10 +13565,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) {
@@ -13545,10 +13579,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);
}
@@ -13557,20 +13591,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);
}
@@ -13578,10 +13612,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) {
@@ -13590,10 +13624,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) {
@@ -13601,28 +13635,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);
}
@@ -13631,10 +13665,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; };
@@ -13683,10 +13717,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) {
@@ -13699,10 +13733,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; };
@@ -13715,10 +13749,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);
}
@@ -13727,10 +13761,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);
}
@@ -13738,35 +13772,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) {
@@ -14038,86 +14072,86 @@
this.output.heading('TypeReference(' + this.output.toValue(node.type) + ")", node.span);
}
$defineMethod(TreePrinter, "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;
}
@@ -14129,7 +14163,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;
@@ -14138,10 +14172,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;
}
@@ -14185,10 +14219,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();
}
@@ -14342,11 +14376,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; };
@@ -15027,19 +15061,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);
@@ -15207,7 +15241,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);
})
);
}
@@ -15705,7 +15739,7 @@
world = new World(files);
world.init();
}
-function lang_compile(homedir, args, files) {
+function compile(homedir, args, files) {
parseOptions(homedir, args);
initializeWorld(files);
var success = world.compile();
@@ -15739,7 +15773,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, new NodeFileSystem())) {
+ if (compile(homedir, process.argv, new NodeFileSystem())) {
var code = world.getGeneratedCode();
if (!options.compileOnly) {
process.argv = [process.argv.$index(0), process.argv.$index(1)];
@@ -15769,73 +15803,73 @@
return this.to$call$2()(current, count);
});
function to$call$2(f) { return f && f.to$call$2(); }
-var const$10 = new EmptyQueueException()/*const EmptyQueueException()*/;
+var const$120 = []/*const <HInstruction>[]*/;
+var const$121 = new NoMoreElementsException()/*const NoMoreElementsException()*/;
+var const$122 = new EmptyQueueException()/*const EmptyQueueException()*/;
var const$129 = new StringWrapper('main')/*const SourceString('main')*/;
-var const$133 = new StringWrapper('void')/*const SourceString('void')*/;
-var const$135 = new StringWrapper('int')/*const SourceString('int')*/;
-var const$137 = new StringWrapper('Dynamic')/*const SourceString('Dynamic')*/;
-var const$139 = new StringWrapper('print')/*const SourceString('print')*/;
-var const$140 = new StringWrapper('+')/*const SourceString('+')*/;
-var const$238 = new Keyword("break", false)/*const Keyword("break")*/;
-var const$240 = new Keyword("case", false)/*const Keyword("case")*/;
-var const$242 = new Keyword("catch", false)/*const Keyword("catch")*/;
-var const$244 = new Keyword("const", false)/*const Keyword("const")*/;
-var const$246 = new Keyword("continue", false)/*const Keyword("continue")*/;
-var const$248 = new Keyword("default", false)/*const Keyword("default")*/;
-var const$250 = new Keyword("do", false)/*const Keyword("do")*/;
-var const$252 = new Keyword("else", false)/*const Keyword("else")*/;
-var const$254 = new Keyword("false", false)/*const Keyword("false")*/;
-var const$256 = new Keyword("final", false)/*const Keyword("final")*/;
-var const$258 = new Keyword("finally", false)/*const Keyword("finally")*/;
-var const$260 = new Keyword("for", false)/*const Keyword("for")*/;
-var const$262 = new Keyword("if", false)/*const Keyword("if")*/;
-var const$264 = new Keyword("in", false)/*const Keyword("in")*/;
-var const$266 = new Keyword("is", false)/*const Keyword("is")*/;
-var const$268 = new Keyword("new", false)/*const Keyword("new")*/;
-var const$270 = new Keyword("null", false)/*const Keyword("null")*/;
-var const$272 = new Keyword("return", false)/*const Keyword("return")*/;
-var const$274 = new Keyword("super", false)/*const Keyword("super")*/;
-var const$276 = new Keyword("switch", false)/*const Keyword("switch")*/;
-var const$278 = new Keyword("this", false)/*const Keyword("this")*/;
-var const$280 = new Keyword("throw", false)/*const Keyword("throw")*/;
-var const$282 = new Keyword("true", false)/*const Keyword("true")*/;
-var const$284 = new Keyword("try", false)/*const Keyword("try")*/;
-var const$286 = new Keyword("var", false)/*const Keyword("var")*/;
-var const$288 = new Keyword("void", false)/*const Keyword("void")*/;
-var const$290 = new Keyword("while", false)/*const Keyword("while")*/;
-var const$292 = new Keyword("abstract", true)/*const Keyword("abstract", true)*/;
-var const$294 = new Keyword("assert", true)/*const Keyword("assert", true)*/;
-var const$296 = new Keyword("class", true)/*const Keyword("class", true)*/;
-var const$298 = new Keyword("extends", true)/*const Keyword("extends", true)*/;
-var const$300 = new Keyword("factory", true)/*const Keyword("factory", true)*/;
-var const$302 = new Keyword("get", true)/*const Keyword("get", true)*/;
-var const$304 = new Keyword("implements", true)/*const Keyword("implements", true)*/;
-var const$306 = new Keyword("import", true)/*const Keyword("import", true)*/;
-var const$308 = new Keyword("interface", true)/*const Keyword("interface", true)*/;
-var const$310 = new Keyword("library", true)/*const Keyword("library", true)*/;
-var const$312 = new Keyword("native", true)/*const Keyword("native", true)*/;
-var const$314 = new Keyword("negate", true)/*const Keyword("negate", true)*/;
-var const$316 = new Keyword("operator", true)/*const Keyword("operator", true)*/;
-var const$318 = new Keyword("set", true)/*const Keyword("set", true)*/;
-var const$320 = new Keyword("source", true)/*const Keyword("source", true)*/;
-var const$322 = new Keyword("static", true)/*const Keyword("static", true)*/;
-var const$324 = new Keyword("typedef", true)/*const Keyword("typedef", true)*/;
-var const$328 = new LinkTail()/*const LinkTail()*/;
-var const$329 = new StringWrapper("<")/*const SourceString("<")*/;
-var const$330 = new StringWrapper(".")/*const SourceString(".")*/;
-var const$331 = new StringWrapper(",")/*const SourceString(",")*/;
-var const$332 = new StringWrapper(">")/*const SourceString(">")*/;
-var const$333 = new StringWrapper("{")/*const SourceString("{")*/;
-var const$334 = new StringWrapper("string")/*const SourceString("string")*/;
-var const$335 = new StringWrapper("(")/*const SourceString("(")*/;
-var const$336 = new StringWrapper(")")/*const SourceString(")")*/;
-var const$337 = new StringWrapper(";")/*const SourceString(";")*/;
-var const$338 = new StringWrapper("#")/*const SourceString("#")*/;
-var const$339 = new StringWrapper("=")/*const SourceString("=")*/;
-var const$340 = new StringWrapper("}")/*const SourceString("}")*/;
-var const$341 = new StringWrapper("return")/*const SourceString("return")*/;
-var const$8 = []/*const <HInstruction>[]*/;
-var const$9 = new NoMoreElementsException()/*const NoMoreElementsException()*/;
+var const$228 = new Keyword("break", false)/*const Keyword("break")*/;
+var const$230 = new Keyword("case", false)/*const Keyword("case")*/;
+var const$232 = new Keyword("catch", false)/*const Keyword("catch")*/;
+var const$234 = new Keyword("const", false)/*const Keyword("const")*/;
+var const$236 = new Keyword("continue", false)/*const Keyword("continue")*/;
+var const$238 = new Keyword("default", false)/*const Keyword("default")*/;
+var const$240 = new Keyword("do", false)/*const Keyword("do")*/;
+var const$242 = new Keyword("else", false)/*const Keyword("else")*/;
+var const$244 = new Keyword("false", false)/*const Keyword("false")*/;
+var const$246 = new Keyword("final", false)/*const Keyword("final")*/;
+var const$248 = new Keyword("finally", false)/*const Keyword("finally")*/;
+var const$250 = new Keyword("for", false)/*const Keyword("for")*/;
+var const$252 = new Keyword("if", false)/*const Keyword("if")*/;
+var const$254 = new Keyword("in", false)/*const Keyword("in")*/;
+var const$256 = new Keyword("is", false)/*const Keyword("is")*/;
+var const$258 = new Keyword("new", false)/*const Keyword("new")*/;
+var const$260 = new Keyword("null", false)/*const Keyword("null")*/;
+var const$262 = new Keyword("return", false)/*const Keyword("return")*/;
+var const$264 = new Keyword("super", false)/*const Keyword("super")*/;
+var const$266 = new Keyword("switch", false)/*const Keyword("switch")*/;
+var const$268 = new Keyword("this", false)/*const Keyword("this")*/;
+var const$270 = new Keyword("throw", false)/*const Keyword("throw")*/;
+var const$272 = new Keyword("true", false)/*const Keyword("true")*/;
+var const$274 = new Keyword("try", false)/*const Keyword("try")*/;
+var const$276 = new Keyword("var", false)/*const Keyword("var")*/;
+var const$278 = new Keyword("void", false)/*const Keyword("void")*/;
+var const$280 = new Keyword("while", false)/*const Keyword("while")*/;
+var const$282 = new Keyword("abstract", true)/*const Keyword("abstract", true)*/;
+var const$284 = new Keyword("assert", true)/*const Keyword("assert", true)*/;
+var const$286 = new Keyword("class", true)/*const Keyword("class", true)*/;
+var const$288 = new Keyword("extends", true)/*const Keyword("extends", true)*/;
+var const$290 = new Keyword("factory", true)/*const Keyword("factory", true)*/;
+var const$292 = new Keyword("get", true)/*const Keyword("get", true)*/;
+var const$294 = new Keyword("implements", true)/*const Keyword("implements", true)*/;
+var const$296 = new Keyword("import", true)/*const Keyword("import", true)*/;
+var const$298 = new Keyword("interface", true)/*const Keyword("interface", true)*/;
+var const$300 = new Keyword("library", true)/*const Keyword("library", true)*/;
+var const$302 = new Keyword("native", true)/*const Keyword("native", true)*/;
+var const$304 = new Keyword("negate", true)/*const Keyword("negate", true)*/;
+var const$306 = new Keyword("operator", true)/*const Keyword("operator", true)*/;
+var const$308 = new Keyword("set", true)/*const Keyword("set", true)*/;
+var const$310 = new Keyword("source", true)/*const Keyword("source", true)*/;
+var const$312 = new Keyword("static", true)/*const Keyword("static", true)*/;
+var const$314 = new Keyword("typedef", true)/*const Keyword("typedef", true)*/;
+var const$318 = new LinkTail()/*const LinkTail()*/;
+var const$319 = new StringWrapper("<")/*const SourceString("<")*/;
+var const$320 = new StringWrapper(".")/*const SourceString(".")*/;
+var const$321 = new StringWrapper(",")/*const SourceString(",")*/;
+var const$322 = new StringWrapper(">")/*const SourceString(">")*/;
+var const$323 = new StringWrapper("{")/*const SourceString("{")*/;
+var const$324 = new StringWrapper("string")/*const SourceString("string")*/;
+var const$325 = new StringWrapper("(")/*const SourceString("(")*/;
+var const$326 = new StringWrapper(")")/*const SourceString(")")*/;
+var const$327 = new StringWrapper(";")/*const SourceString(";")*/;
+var const$328 = new StringWrapper("#")/*const SourceString("#")*/;
+var const$329 = new StringWrapper("=")/*const SourceString("=")*/;
+var const$330 = new StringWrapper("}")/*const SourceString("}")*/;
+var const$331 = new StringWrapper("return")/*const SourceString("return")*/;
+var const$333 = new StringWrapper('print')/*const SourceString('print')*/;
+var const$334 = new StringWrapper('+')/*const SourceString('+')*/;
+var const$336 = new StringWrapper('void')/*const SourceString('void')*/;
+var const$338 = new StringWrapper('int')/*const SourceString('int')*/;
+var const$340 = new StringWrapper('Dynamic')/*const SourceString('Dynamic')*/;
var $0 = 48;
var $1 = 49;
var $2 = 50;
@@ -16025,9 +16059,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;
@@ -16081,54 +16115,54 @@
TokenKind.WHITESPACE = 62;
HashMapImplementation._INITIAL_CAPACITY = 8;
var _SPAWNED_SIGNAL = "spawned";
-var const$134 = new SimpleType(const$133)/*const SimpleType(const SourceString('void'))*/;
-var const$136 = new SimpleType(const$135)/*const SimpleType(const SourceString('int'))*/;
-var const$138 = new SimpleType(const$137)/*const SimpleType(const SourceString('Dynamic'))*/;
-Keyword.ABSTRACT = const$292/*const Keyword("abstract", true)*/;
-Keyword.ASSERT = const$294/*const Keyword("assert", true)*/;
-Keyword.BREAK = const$238/*const Keyword("break")*/;
-Keyword.CASE = const$240/*const Keyword("case")*/;
-Keyword.CATCH = const$242/*const Keyword("catch")*/;
-Keyword.CLASS = const$296/*const Keyword("class", true)*/;
-Keyword.CONST = const$244/*const Keyword("const")*/;
-Keyword.CONTINUE = const$246/*const Keyword("continue")*/;
-Keyword.DEFAULT = const$248/*const Keyword("default")*/;
-Keyword.DO = const$250/*const Keyword("do")*/;
-Keyword.ELSE = const$252/*const Keyword("else")*/;
-Keyword.EXTENDS = const$298/*const Keyword("extends", true)*/;
-Keyword.FACTORY = const$300/*const Keyword("factory", true)*/;
-Keyword.FALSE = const$254/*const Keyword("false")*/;
-Keyword.FINAL = const$256/*const Keyword("final")*/;
-Keyword.FINALLY = const$258/*const Keyword("finally")*/;
-Keyword.FOR = const$260/*const Keyword("for")*/;
-Keyword.GET = const$302/*const Keyword("get", true)*/;
-Keyword.IF = const$262/*const Keyword("if")*/;
-Keyword.IMPLEMENTS = const$304/*const Keyword("implements", true)*/;
-Keyword.IMPORT = const$306/*const Keyword("import", true)*/;
-Keyword.IN = const$264/*const Keyword("in")*/;
-Keyword.INTERFACE = const$308/*const Keyword("interface", true)*/;
-Keyword.IS = const$266/*const Keyword("is")*/;
-Keyword.LIBRARY = const$310/*const Keyword("library", true)*/;
-Keyword.NATIVE = const$312/*const Keyword("native", true)*/;
-Keyword.NEGATE = const$314/*const Keyword("negate", true)*/;
-Keyword.NEW = const$268/*const Keyword("new")*/;
-Keyword.NULL = const$270/*const Keyword("null")*/;
-Keyword.OPERATOR = const$316/*const Keyword("operator", true)*/;
-Keyword.RETURN = const$272/*const Keyword("return")*/;
-Keyword.SET = const$318/*const Keyword("set", true)*/;
-Keyword.SOURCE = const$320/*const Keyword("source", true)*/;
-Keyword.STATIC = const$322/*const Keyword("static", true)*/;
-Keyword.SUPER = const$274/*const Keyword("super")*/;
-Keyword.SWITCH = const$276/*const Keyword("switch")*/;
-Keyword.THIS = const$278/*const Keyword("this")*/;
-Keyword.THROW = const$280/*const Keyword("throw")*/;
-Keyword.TRUE = const$282/*const Keyword("true")*/;
-Keyword.TRY = const$284/*const Keyword("try")*/;
-Keyword.TYPEDEF = const$324/*const Keyword("typedef", true)*/;
-Keyword.VAR = const$286/*const Keyword("var")*/;
-Keyword.VOID = const$288/*const Keyword("void")*/;
-Keyword.WHILE = const$290/*const Keyword("while")*/;
-var const$326 = [const$238, const$240, const$242, const$244, const$246, const$248, const$250, const$252, const$254, const$256, const$258, const$260, const$262, const$264, const$266, const$268, const$270, const$272, const$274, const$276, const$278, const$280, const$282, const$284, const$286, const$288, const$290, const$292, const$294, const$296, const$298, const$300, const$302, const$304, const$306, const$308, const$310, const$312, const$314, const$316, const$318, const$320, const$322, const$324]/*const <Keyword> [
+var const$337 = new SimpleType(const$336)/*const SimpleType(const SourceString('void'))*/;
+var const$339 = new SimpleType(const$338)/*const SimpleType(const SourceString('int'))*/;
+var const$341 = new SimpleType(const$340)/*const SimpleType(const SourceString('Dynamic'))*/;
+Keyword.ABSTRACT = const$282/*const Keyword("abstract", true)*/;
+Keyword.ASSERT = const$284/*const Keyword("assert", true)*/;
+Keyword.BREAK = const$228/*const Keyword("break")*/;
+Keyword.CASE = const$230/*const Keyword("case")*/;
+Keyword.CATCH = const$232/*const Keyword("catch")*/;
+Keyword.CLASS = const$286/*const Keyword("class", true)*/;
+Keyword.CONST = const$234/*const Keyword("const")*/;
+Keyword.CONTINUE = const$236/*const Keyword("continue")*/;
+Keyword.DEFAULT = const$238/*const Keyword("default")*/;
+Keyword.DO = const$240/*const Keyword("do")*/;
+Keyword.ELSE = const$242/*const Keyword("else")*/;
+Keyword.EXTENDS = const$288/*const Keyword("extends", true)*/;
+Keyword.FACTORY = const$290/*const Keyword("factory", true)*/;
+Keyword.FALSE = const$244/*const Keyword("false")*/;
+Keyword.FINAL = const$246/*const Keyword("final")*/;
+Keyword.FINALLY = const$248/*const Keyword("finally")*/;
+Keyword.FOR = const$250/*const Keyword("for")*/;
+Keyword.GET = const$292/*const Keyword("get", true)*/;
+Keyword.IF = const$252/*const Keyword("if")*/;
+Keyword.IMPLEMENTS = const$294/*const Keyword("implements", true)*/;
+Keyword.IMPORT = const$296/*const Keyword("import", true)*/;
+Keyword.IN = const$254/*const Keyword("in")*/;
+Keyword.INTERFACE = const$298/*const Keyword("interface", true)*/;
+Keyword.IS = const$256/*const Keyword("is")*/;
+Keyword.LIBRARY = const$300/*const Keyword("library", true)*/;
+Keyword.NATIVE = const$302/*const Keyword("native", true)*/;
+Keyword.NEGATE = const$304/*const Keyword("negate", true)*/;
+Keyword.NEW = const$258/*const Keyword("new")*/;
+Keyword.NULL = const$260/*const Keyword("null")*/;
+Keyword.OPERATOR = const$306/*const Keyword("operator", true)*/;
+Keyword.RETURN = const$262/*const Keyword("return")*/;
+Keyword.SET = const$308/*const Keyword("set", true)*/;
+Keyword.SOURCE = const$310/*const Keyword("source", true)*/;
+Keyword.STATIC = const$312/*const Keyword("static", true)*/;
+Keyword.SUPER = const$264/*const Keyword("super")*/;
+Keyword.SWITCH = const$266/*const Keyword("switch")*/;
+Keyword.THIS = const$268/*const Keyword("this")*/;
+Keyword.THROW = const$270/*const Keyword("throw")*/;
+Keyword.TRUE = const$272/*const Keyword("true")*/;
+Keyword.TRY = const$274/*const Keyword("try")*/;
+Keyword.TYPEDEF = const$314/*const Keyword("typedef", true)*/;
+Keyword.VAR = const$276/*const Keyword("var")*/;
+Keyword.VOID = const$278/*const Keyword("void")*/;
+Keyword.WHILE = const$280/*const Keyword("while")*/;
+var const$316 = [const$228, const$230, const$232, const$234, const$236, const$238, const$240, const$242, const$244, const$246, const$248, const$250, const$252, const$254, const$256, const$258, const$260, const$262, const$264, const$266, const$268, const$270, const$272, const$274, const$276, const$278, const$280, const$282, const$284, const$286, const$288, const$290, const$292, const$294, const$296, const$298, const$300, const$302, const$304, const$306, const$308, const$310, const$312, const$314]/*const <Keyword> [
BREAK,
CASE,
CATCH,
@@ -16173,7 +16207,7 @@
SOURCE,
STATIC,
TYPEDEF ]*/;
-Keyword.values = const$326/*const <Keyword> [
+Keyword.values = const$316/*const <Keyword> [
BREAK,
CASE,
CATCH,
« no previous file with comments | « no previous file | gen.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698