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

Side by Side Diff: frog/frogsh

Issue 8589016: Add implicit super() call (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | frog/gen.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env node 1 #!/usr/bin/env node
2 // ********** Library dart:core ************** 2 // ********** Library dart:core **************
3 // ********** Natives dart:core ************** 3 // ********** Natives dart:core **************
4 /** 4 /**
5 * Generates a dynamic call stub for a function. 5 * Generates a dynamic call stub for a function.
6 * Our goal is to create a stub method like this on-the-fly: 6 * Our goal is to create a stub method like this on-the-fly:
7 * function($0, $1, capture) { this($0, $1, true, capture); } 7 * function($0, $1, capture) { this($0, $1, true, capture); }
8 * 8 *
9 * This stub then replaces the dynamic one on Function, with one that is 9 * This stub then replaces the dynamic one on Function, with one that is
10 * specialized for that particular function, taking into account its default 10 * specialized for that particular function, taking into account its default
(...skipping 942 matching lines...) Expand 10 before | Expand all | Expand 10 after
953 } 953 }
954 ListIterator.prototype.hasNext$0 = function() { 954 ListIterator.prototype.hasNext$0 = function() {
955 return this.hasNext(); 955 return this.hasNext();
956 }; 956 };
957 ListIterator.prototype.next$0 = function() { 957 ListIterator.prototype.next$0 = function() {
958 return this.next(); 958 return this.next();
959 }; 959 };
960 // ********** Code for ImmutableList ************** 960 // ********** Code for ImmutableList **************
961 function ImmutableList(length) { 961 function ImmutableList(length) {
962 this._length = length; 962 this._length = length;
963 // Initializers done
963 ListFactory$E.call(this, length); 964 ListFactory$E.call(this, length);
964 // Initializers done
965 } 965 }
966 /** Implements extends for Dart classes on JavaScript prototypes. */ 966 /** Implements extends for Dart classes on JavaScript prototypes. */
967 function $inherits(child, parent) { 967 function $inherits(child, parent) {
968 if (child.prototype.__proto__) { 968 if (child.prototype.__proto__) {
969 child.prototype.__proto__ = parent.prototype; 969 child.prototype.__proto__ = parent.prototype;
970 } else { 970 } else {
971 function tmp() {}; 971 function tmp() {};
972 tmp.prototype = parent.prototype; 972 tmp.prototype = parent.prototype;
973 child.prototype = new tmp(); 973 child.prototype = new tmp();
974 child.prototype.constructor = child; 974 child.prototype.constructor = child;
(...skipping 813 matching lines...) Expand 10 before | Expand all | Expand 10 after
1788 } 1788 }
1789 DoubleLinkedQueueEntry$E.prototype.previousEntry = function() { 1789 DoubleLinkedQueueEntry$E.prototype.previousEntry = function() {
1790 return this._previous._asNonSentinelEntry(); 1790 return this._previous._asNonSentinelEntry();
1791 } 1791 }
1792 // ********** Code for DoubleLinkedQueueEntry$KeyValuePair$K$V ************** 1792 // ********** Code for DoubleLinkedQueueEntry$KeyValuePair$K$V **************
1793 function DoubleLinkedQueueEntry$KeyValuePair$K$V() {} 1793 function DoubleLinkedQueueEntry$KeyValuePair$K$V() {}
1794 $inherits(DoubleLinkedQueueEntry$KeyValuePair$K$V, DoubleLinkedQueueEntry); 1794 $inherits(DoubleLinkedQueueEntry$KeyValuePair$K$V, DoubleLinkedQueueEntry);
1795 DoubleLinkedQueueEntry$KeyValuePair$K$V.prototype.is$DoubleLinkedQueueEntry$KeyV aluePair$K$V = function(){return this;}; 1795 DoubleLinkedQueueEntry$KeyValuePair$K$V.prototype.is$DoubleLinkedQueueEntry$KeyV aluePair$K$V = function(){return this;};
1796 // ********** Code for _DoubleLinkedQueueEntrySentinel ************** 1796 // ********** Code for _DoubleLinkedQueueEntrySentinel **************
1797 function _DoubleLinkedQueueEntrySentinel() { 1797 function _DoubleLinkedQueueEntrySentinel() {
1798 // Initializers done
1798 DoubleLinkedQueueEntry$E.call(this, null); 1799 DoubleLinkedQueueEntry$E.call(this, null);
1799 // Initializers done
1800 this._link(this, this); 1800 this._link(this, this);
1801 } 1801 }
1802 $inherits(_DoubleLinkedQueueEntrySentinel, DoubleLinkedQueueEntry$E); 1802 $inherits(_DoubleLinkedQueueEntrySentinel, DoubleLinkedQueueEntry$E);
1803 _DoubleLinkedQueueEntrySentinel.prototype.remove = function() { 1803 _DoubleLinkedQueueEntrySentinel.prototype.remove = function() {
1804 $throw(const$3/*const EmptyQueueException()*/); 1804 $throw(const$3/*const EmptyQueueException()*/);
1805 } 1805 }
1806 _DoubleLinkedQueueEntrySentinel.prototype._asNonSentinelEntry = function() { 1806 _DoubleLinkedQueueEntrySentinel.prototype._asNonSentinelEntry = function() {
1807 return null; 1807 return null;
1808 } 1808 }
1809 _DoubleLinkedQueueEntrySentinel.prototype.get$element = function() { 1809 _DoubleLinkedQueueEntrySentinel.prototype.get$element = function() {
1810 $throw(const$3/*const EmptyQueueException()*/); 1810 $throw(const$3/*const EmptyQueueException()*/);
1811 } 1811 }
1812 // ********** Code for _DoubleLinkedQueueEntrySentinel$E ************** 1812 // ********** Code for _DoubleLinkedQueueEntrySentinel$E **************
1813 function _DoubleLinkedQueueEntrySentinel$E() { 1813 function _DoubleLinkedQueueEntrySentinel$E() {
1814 // Initializers done
1814 DoubleLinkedQueueEntry$E.call(this, null); 1815 DoubleLinkedQueueEntry$E.call(this, null);
1815 // Initializers done
1816 this._link(this, this); 1816 this._link(this, this);
1817 } 1817 }
1818 $inherits(_DoubleLinkedQueueEntrySentinel$E, _DoubleLinkedQueueEntrySentinel); 1818 $inherits(_DoubleLinkedQueueEntrySentinel$E, _DoubleLinkedQueueEntrySentinel);
1819 // ********** Code for _DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V ******** ****** 1819 // ********** Code for _DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V ******** ******
1820 function _DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V() { 1820 function _DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V() {
1821 // Initializers done
1821 DoubleLinkedQueueEntry$E.call(this, null); 1822 DoubleLinkedQueueEntry$E.call(this, null);
1822 // Initializers done
1823 this._link(this, this); 1823 this._link(this, this);
1824 } 1824 }
1825 $inherits(_DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V, _DoubleLinkedQueueEn trySentinel); 1825 $inherits(_DoubleLinkedQueueEntrySentinel$KeyValuePair$K$V, _DoubleLinkedQueueEn trySentinel);
1826 // ********** Code for DoubleLinkedQueue ************** 1826 // ********** Code for DoubleLinkedQueue **************
1827 function DoubleLinkedQueue() { 1827 function DoubleLinkedQueue() {
1828 // Initializers done 1828 // Initializers done
1829 this._sentinel = new _DoubleLinkedQueueEntrySentinel$E(); 1829 this._sentinel = new _DoubleLinkedQueueEntrySentinel$E();
1830 } 1830 }
1831 DoubleLinkedQueue.prototype.is$Collection$E = function(){return this;}; 1831 DoubleLinkedQueue.prototype.is$Collection$E = function(){return this;};
1832 DoubleLinkedQueue.prototype.is$Collection$Object = function(){return this;}; 1832 DoubleLinkedQueue.prototype.is$Collection$Object = function(){return this;};
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after
2398 // ********** Code for LinkFactory ************** 2398 // ********** Code for LinkFactory **************
2399 function LinkFactory() {} 2399 function LinkFactory() {}
2400 LinkFactory.Link$factory = function(head, tail) { 2400 LinkFactory.Link$factory = function(head, tail) {
2401 var $0; 2401 var $0;
2402 return new LinkEntry(head, (($0 = (tail == null) ? const$14/*const EmptyLink() */ : tail) && $0.is$Link$T())); 2402 return new LinkEntry(head, (($0 = (tail == null) ? const$14/*const EmptyLink() */ : tail) && $0.is$Link$T()));
2403 } 2403 }
2404 // ********** Code for LinkFactory$Node ************** 2404 // ********** Code for LinkFactory$Node **************
2405 function LinkFactory$Node() {} 2405 function LinkFactory$Node() {}
2406 $inherits(LinkFactory$Node, LinkFactory); 2406 $inherits(LinkFactory$Node, LinkFactory);
2407 // ********** Code for AbstractLink ************** 2407 // ********** Code for AbstractLink **************
2408 function AbstractLink() {} 2408 function AbstractLink() {
2409 // Initializers done
2410 }
2409 AbstractLink.prototype.is$Link = function(){return this;}; 2411 AbstractLink.prototype.is$Link = function(){return this;};
2410 AbstractLink.prototype.is$Link$Element = function(){return this;}; 2412 AbstractLink.prototype.is$Link$Element = function(){return this;};
2411 AbstractLink.prototype.is$Link$Node = function(){return this;}; 2413 AbstractLink.prototype.is$Link$Node = function(){return this;};
2412 AbstractLink.prototype.is$Link$T = function(){return this;}; 2414 AbstractLink.prototype.is$Link$T = function(){return this;};
2413 AbstractLink.prototype.is$Link$Token = function(){return this;}; 2415 AbstractLink.prototype.is$Link$Token = function(){return this;};
2414 AbstractLink.prototype.is$Link$Type = function(){return this;}; 2416 AbstractLink.prototype.is$Link$Type = function(){return this;};
2415 AbstractLink.prototype.is$Iterable = function(){return this;}; 2417 AbstractLink.prototype.is$Iterable = function(){return this;};
2416 AbstractLink.prototype.get$head = function() { 2418 AbstractLink.prototype.get$head = function() {
2417 $throw("bug"); 2419 $throw("bug");
2418 } 2420 }
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
2450 AbstractLink.prototype.iterator$0 = function() { 2452 AbstractLink.prototype.iterator$0 = function() {
2451 return this.iterator(); 2453 return this.iterator();
2452 }; 2454 };
2453 AbstractLink.prototype.printOn$1 = function($0) { 2455 AbstractLink.prototype.printOn$1 = function($0) {
2454 return this.printOn(($0 && $0.is$StringBuffer())); 2456 return this.printOn(($0 && $0.is$StringBuffer()));
2455 }; 2457 };
2456 AbstractLink.prototype.toString$0 = function() { 2458 AbstractLink.prototype.toString$0 = function() {
2457 return this.toString(); 2459 return this.toString();
2458 }; 2460 };
2459 // ********** Code for AbstractLink$T ************** 2461 // ********** Code for AbstractLink$T **************
2460 function AbstractLink$T() {} 2462 function AbstractLink$T() {
2463 // Initializers done
2464 }
2461 $inherits(AbstractLink$T, AbstractLink); 2465 $inherits(AbstractLink$T, AbstractLink);
2462 AbstractLink$T.prototype.is$Link = function(){return this;}; 2466 AbstractLink$T.prototype.is$Link = function(){return this;};
2463 AbstractLink$T.prototype.is$Link$Element = function(){return this;}; 2467 AbstractLink$T.prototype.is$Link$Element = function(){return this;};
2464 AbstractLink$T.prototype.is$Link$Node = function(){return this;}; 2468 AbstractLink$T.prototype.is$Link$Node = function(){return this;};
2465 AbstractLink$T.prototype.is$Link$T = function(){return this;}; 2469 AbstractLink$T.prototype.is$Link$T = function(){return this;};
2466 AbstractLink$T.prototype.is$Link$Token = function(){return this;}; 2470 AbstractLink$T.prototype.is$Link$Token = function(){return this;};
2467 AbstractLink$T.prototype.is$Link$Type = function(){return this;}; 2471 AbstractLink$T.prototype.is$Link$Type = function(){return this;};
2468 AbstractLink$T.prototype.is$Iterable = function(){return this;}; 2472 AbstractLink$T.prototype.is$Iterable = function(){return this;};
2469 AbstractLink$T.prototype.iterator = function() { 2473 AbstractLink$T.prototype.iterator = function() {
2470 var $0; 2474 var $0;
2471 return (($0 = this.toList().iterator$0()) && $0.is$Iterator$T()); 2475 return (($0 = this.toList().iterator$0()) && $0.is$Iterator$T());
2472 } 2476 }
2473 // ********** Code for LinkTail ************** 2477 // ********** Code for LinkTail **************
2474 function LinkTail() { 2478 function LinkTail() {
2475 // Initializers done 2479 // Initializers done
2480 AbstractLink$T.call(this);
2476 } 2481 }
2477 $inherits(LinkTail, AbstractLink$T); 2482 $inherits(LinkTail, AbstractLink$T);
2478 LinkTail.prototype.is$Link = function(){return this;}; 2483 LinkTail.prototype.is$Link = function(){return this;};
2479 LinkTail.prototype.is$Link$Element = function(){return this;}; 2484 LinkTail.prototype.is$Link$Element = function(){return this;};
2480 LinkTail.prototype.is$Link$Node = function(){return this;}; 2485 LinkTail.prototype.is$Link$Node = function(){return this;};
2481 LinkTail.prototype.is$Link$T = function(){return this;}; 2486 LinkTail.prototype.is$Link$T = function(){return this;};
2482 LinkTail.prototype.is$Link$Token = function(){return this;}; 2487 LinkTail.prototype.is$Link$Token = function(){return this;};
2483 LinkTail.prototype.is$Link$Type = function(){return this;}; 2488 LinkTail.prototype.is$Link$Type = function(){return this;};
2484 LinkTail.prototype.is$Iterable = function(){return this;}; 2489 LinkTail.prototype.is$Iterable = function(){return this;};
2485 LinkTail.prototype.get$head = function() { 2490 LinkTail.prototype.get$head = function() {
(...skipping 29 matching lines...) Expand all
2515 LinkTail$Type.prototype.is$Link$Node = function(){return this;}; 2520 LinkTail$Type.prototype.is$Link$Node = function(){return this;};
2516 LinkTail$Type.prototype.is$Link$T = function(){return this;}; 2521 LinkTail$Type.prototype.is$Link$T = function(){return this;};
2517 LinkTail$Type.prototype.is$Link$Token = function(){return this;}; 2522 LinkTail$Type.prototype.is$Link$Token = function(){return this;};
2518 LinkTail$Type.prototype.is$Link$Type = function(){return this;}; 2523 LinkTail$Type.prototype.is$Link$Type = function(){return this;};
2519 LinkTail$Type.prototype.is$Iterable = function(){return this;}; 2524 LinkTail$Type.prototype.is$Iterable = function(){return this;};
2520 // ********** Code for LinkEntry ************** 2525 // ********** Code for LinkEntry **************
2521 function LinkEntry(head, realTail) { 2526 function LinkEntry(head, realTail) {
2522 this.head = head; 2527 this.head = head;
2523 this.realTail = realTail; 2528 this.realTail = realTail;
2524 // Initializers done 2529 // Initializers done
2530 AbstractLink$T.call(this);
2525 } 2531 }
2526 $inherits(LinkEntry, AbstractLink$T); 2532 $inherits(LinkEntry, AbstractLink$T);
2527 LinkEntry.prototype.get$head = function() { return this.head; }; 2533 LinkEntry.prototype.get$head = function() { return this.head; };
2528 LinkEntry.prototype.get$tail = function() { 2534 LinkEntry.prototype.get$tail = function() {
2529 return this.realTail; 2535 return this.realTail;
2530 } 2536 }
2531 LinkEntry.prototype.isEmpty = function() { 2537 LinkEntry.prototype.isEmpty = function() {
2532 return false; 2538 return false;
2533 } 2539 }
2534 LinkEntry.prototype.toList = function() { 2540 LinkEntry.prototype.toList = function() {
2535 var $0; 2541 var $0;
2536 var list = new ListFactory(); 2542 var list = new ListFactory();
2537 for (var link = this; 2543 for (var link = this;
2538 !$notnull_bool(link.isEmpty()); link = (($0 = link.get$tail()) && $0.is$Link$ T())) { 2544 !$notnull_bool(link.isEmpty()); link = (($0 = link.get$tail()) && $0.is$Link$ T())) {
2539 list.addLast(link.get$head()); 2545 list.addLast(link.get$head());
2540 } 2546 }
2541 return list; 2547 return list;
2542 } 2548 }
2543 LinkEntry.prototype.isEmpty$0 = function() { 2549 LinkEntry.prototype.isEmpty$0 = function() {
2544 return this.isEmpty(); 2550 return this.isEmpty();
2545 }; 2551 };
2546 // ********** Code for LinkEntry$T ************** 2552 // ********** Code for LinkEntry$T **************
2547 function LinkEntry$T(head, realTail) { 2553 function LinkEntry$T(head, realTail) {
2548 this.head = head; 2554 this.head = head;
2549 this.realTail = realTail; 2555 this.realTail = realTail;
2550 // Initializers done 2556 // Initializers done
2557 AbstractLink$T.call(this);
2551 } 2558 }
2552 $inherits(LinkEntry$T, LinkEntry); 2559 $inherits(LinkEntry$T, LinkEntry);
2553 // ********** Code for LinkBuilderImplementation ************** 2560 // ********** Code for LinkBuilderImplementation **************
2554 function LinkBuilderImplementation() { 2561 function LinkBuilderImplementation() {
2555 this.head = null 2562 this.head = null
2556 this.lastLink = null 2563 this.lastLink = null
2557 // Initializers done 2564 // Initializers done
2558 } 2565 }
2559 LinkBuilderImplementation.prototype.get$head = function() { return this.head; }; 2566 LinkBuilderImplementation.prototype.get$head = function() { return this.head; };
2560 LinkBuilderImplementation.prototype.set$head = function(value) { return this.hea d = value; }; 2567 LinkBuilderImplementation.prototype.set$head = function(value) { return this.hea d = value; };
(...skipping 23 matching lines...) Expand all
2584 // ********** Code for top level ************** 2591 // ********** Code for top level **************
2585 // ********** Library scanner_implementation ************** 2592 // ********** Library scanner_implementation **************
2586 // ********** Code for ArrayBasedScanner ************** 2593 // ********** Code for ArrayBasedScanner **************
2587 function ArrayBasedScanner() { 2594 function ArrayBasedScanner() {
2588 this.groupingStack = const$14/*const EmptyLink()*/ 2595 this.groupingStack = const$14/*const EmptyLink()*/
2589 this.extraCharOffset = 0; 2596 this.extraCharOffset = 0;
2590 this.tokenStart = -1; 2597 this.tokenStart = -1;
2591 this.byteOffset = -1; 2598 this.byteOffset = -1;
2592 this.tokens = new Token(0/*null.EOF_TOKEN*/, -1); 2599 this.tokens = new Token(0/*null.EOF_TOKEN*/, -1);
2593 // Initializers done 2600 // Initializers done
2601 AbstractScanner$S.call(this);
2594 this.tail = this.tokens; 2602 this.tail = this.tokens;
2595 } 2603 }
2596 $inherits(ArrayBasedScanner, AbstractScanner$S); 2604 $inherits(ArrayBasedScanner, AbstractScanner$S);
2597 ArrayBasedScanner.prototype.get$charOffset = function() { 2605 ArrayBasedScanner.prototype.get$charOffset = function() {
2598 return this.byteOffset + this.extraCharOffset; 2606 return this.byteOffset + this.extraCharOffset;
2599 } 2607 }
2600 ArrayBasedScanner.prototype.get$tail = function() { return this.tail; }; 2608 ArrayBasedScanner.prototype.get$tail = function() { return this.tail; };
2601 ArrayBasedScanner.prototype.set$tail = function(value) { return this.tail = valu e; }; 2609 ArrayBasedScanner.prototype.set$tail = function(value) { return this.tail = valu e; };
2602 ArrayBasedScanner.prototype.get$byteOffset = function() { return this.byteOffset ; }; 2610 ArrayBasedScanner.prototype.get$byteOffset = function() { return this.byteOffset ; };
2603 ArrayBasedScanner.prototype.set$byteOffset = function(value) { return this.byteO ffset = value; }; 2611 ArrayBasedScanner.prototype.set$byteOffset = function(value) { return this.byteO ffset = value; };
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
2701 } 2709 }
2702 } 2710 }
2703 // ********** Code for ArrayBasedScanner$SourceString ************** 2711 // ********** Code for ArrayBasedScanner$SourceString **************
2704 function ArrayBasedScanner$SourceString() { 2712 function ArrayBasedScanner$SourceString() {
2705 this.groupingStack = const$14/*const EmptyLink()*/ 2713 this.groupingStack = const$14/*const EmptyLink()*/
2706 this.extraCharOffset = 0; 2714 this.extraCharOffset = 0;
2707 this.tokenStart = -1; 2715 this.tokenStart = -1;
2708 this.byteOffset = -1; 2716 this.byteOffset = -1;
2709 this.tokens = new Token(0/*null.EOF_TOKEN*/, -1); 2717 this.tokens = new Token(0/*null.EOF_TOKEN*/, -1);
2710 // Initializers done 2718 // Initializers done
2719 AbstractScanner$S.call(this);
2711 this.tail = this.tokens; 2720 this.tail = this.tokens;
2712 } 2721 }
2713 $inherits(ArrayBasedScanner$SourceString, ArrayBasedScanner); 2722 $inherits(ArrayBasedScanner$SourceString, ArrayBasedScanner);
2714 // ********** Code for top level ************** 2723 // ********** Code for top level **************
2715 // ********** Library scanner ************** 2724 // ********** Library scanner **************
2716 // ********** Code for AbstractScanner ************** 2725 // ********** Code for AbstractScanner **************
2717 function AbstractScanner() {} 2726 function AbstractScanner() {
2727 // Initializers done
2728 }
2718 AbstractScanner.prototype.tokenize = function() { 2729 AbstractScanner.prototype.tokenize = function() {
2719 var next = this.advance(); 2730 var next = this.advance();
2720 while (next != -1) { 2731 while (next != -1) {
2721 next = this.bigSwitch(next); 2732 next = this.bigSwitch(next);
2722 } 2733 }
2723 this.appendEofToken(); 2734 this.appendEofToken();
2724 return this.firstToken(); 2735 return this.firstToken();
2725 } 2736 }
2726 AbstractScanner.prototype.bigSwitch = function(next) { 2737 AbstractScanner.prototype.bigSwitch = function(next) {
2727 this.beginToken(); 2738 this.beginToken();
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after
3528 return this.advance(); 3539 return this.advance();
3529 } 3540 }
3530 } 3541 }
3531 } 3542 }
3532 next = this.advance(); 3543 next = this.advance();
3533 } 3544 }
3534 return next; 3545 return next;
3535 } 3546 }
3536 AbstractScanner.prototype.appendByteStringToken$2 = AbstractScanner.prototype.ap pendByteStringToken; 3547 AbstractScanner.prototype.appendByteStringToken$2 = AbstractScanner.prototype.ap pendByteStringToken;
3537 // ********** Code for AbstractScanner$S ************** 3548 // ********** Code for AbstractScanner$S **************
3538 function AbstractScanner$S() {} 3549 function AbstractScanner$S() {
3550 // Initializers done
3551 }
3539 $inherits(AbstractScanner$S, AbstractScanner); 3552 $inherits(AbstractScanner$S, AbstractScanner);
3540 AbstractScanner$S.prototype.tokenize = function() { 3553 AbstractScanner$S.prototype.tokenize = function() {
3541 var next = this.advance(); 3554 var next = this.advance();
3542 while (next != -1) { 3555 while (next != -1) {
3543 next = this.bigSwitch(next); 3556 next = this.bigSwitch(next);
3544 } 3557 }
3545 this.appendEofToken(); 3558 this.appendEofToken();
3546 return this.firstToken(); 3559 return this.firstToken();
3547 } 3560 }
3548 AbstractScanner$S.prototype.bigSwitch = function(next) { 3561 AbstractScanner$S.prototype.bigSwitch = function(next) {
(...skipping 812 matching lines...) Expand 10 before | Expand all | Expand 10 after
4361 // Initializers done 4374 // Initializers done
4362 } 4375 }
4363 MalformedInputException.prototype.toString = function() { 4376 MalformedInputException.prototype.toString = function() {
4364 return this.message.toString$0(); 4377 return this.message.toString$0();
4365 } 4378 }
4366 MalformedInputException.prototype.toString$0 = function() { 4379 MalformedInputException.prototype.toString$0 = function() {
4367 return this.toString(); 4380 return this.toString();
4368 }; 4381 };
4369 // ********** Code for ScannerTask ************** 4382 // ********** Code for ScannerTask **************
4370 function ScannerTask(compiler) { 4383 function ScannerTask(compiler) {
4384 // Initializers done
4371 CompilerTask.call(this, compiler); 4385 CompilerTask.call(this, compiler);
4372 // Initializers done
4373 } 4386 }
4374 $inherits(ScannerTask, CompilerTask); 4387 $inherits(ScannerTask, CompilerTask);
4375 ScannerTask.prototype.get$name = function() { 4388 ScannerTask.prototype.get$name = function() {
4376 return 'Scanner'; 4389 return 'Scanner';
4377 } 4390 }
4378 ScannerTask.prototype.scan = function(script) { 4391 ScannerTask.prototype.scan = function(script) {
4379 var $this = this; // closure support 4392 var $this = this; // closure support
4380 this.measure((function () { 4393 this.measure((function () {
4381 var $0; 4394 var $0;
4382 var elements = $this.scanElements(script.get$text()); 4395 var elements = $this.scanElements(script.get$text());
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after
4803 return this.handleNoTypeArguments.call$1($0); 4816 return this.handleNoTypeArguments.call$1($0);
4804 }; 4817 };
4805 PartialParser.prototype.handleNoTypeVariables$1 = function($0) { 4818 PartialParser.prototype.handleNoTypeVariables$1 = function($0) {
4806 return this.handleNoTypeVariables.call$1($0); 4819 return this.handleNoTypeVariables.call$1($0);
4807 }; 4820 };
4808 PartialParser.prototype.parseClass$1 = function($0) { 4821 PartialParser.prototype.parseClass$1 = function($0) {
4809 return this.parseClass(($0 && $0.is$Token())); 4822 return this.parseClass(($0 && $0.is$Token()));
4810 }; 4823 };
4811 // ********** Code for Parser ************** 4824 // ********** Code for Parser **************
4812 function Parser(listener) { 4825 function Parser(listener) {
4826 // Initializers done
4813 PartialParser.call(this, listener); 4827 PartialParser.call(this, listener);
4814 // Initializers done
4815 } 4828 }
4816 $inherits(Parser, PartialParser); 4829 $inherits(Parser, PartialParser);
4817 Parser.prototype.parseFunction = function(token) { 4830 Parser.prototype.parseFunction = function(token) {
4818 this.listener.beginFunction$1(token); 4831 this.listener.beginFunction$1(token);
4819 token = this.parseReturnTypeOpt(token); 4832 token = this.parseReturnTypeOpt(token);
4820 this.listener.beginFunctionName$1(token); 4833 this.listener.beginFunctionName$1(token);
4821 token = this.parseIdentifier(token); 4834 token = this.parseIdentifier(token);
4822 this.listener.endFunctionName$1(token); 4835 this.listener.endFunctionName$1(token);
4823 token = this.parseFormalParameters(token); 4836 token = this.parseFormalParameters(token);
4824 return this.parseFunctionBody(token); 4837 return this.parseFunctionBody(token);
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after
5370 token = this.parseExpression(token); 5383 token = this.parseExpression(token);
5371 this.listener.endThrowStatement$2(throwToken, token); 5384 this.listener.endThrowStatement$2(throwToken, token);
5372 return this.expectSemicolon(token); 5385 return this.expectSemicolon(token);
5373 } 5386 }
5374 } 5387 }
5375 Parser.prototype.parseFunction$1 = function($0) { 5388 Parser.prototype.parseFunction$1 = function($0) {
5376 return this.parseFunction(($0 && $0.is$Token())); 5389 return this.parseFunction(($0 && $0.is$Token()));
5377 }; 5390 };
5378 // ********** Code for ParserTask ************** 5391 // ********** Code for ParserTask **************
5379 function ParserTask(compiler) { 5392 function ParserTask(compiler) {
5393 // Initializers done
5380 CompilerTask.call(this, compiler); 5394 CompilerTask.call(this, compiler);
5381 // Initializers done
5382 } 5395 }
5383 $inherits(ParserTask, CompilerTask); 5396 $inherits(ParserTask, CompilerTask);
5384 ParserTask.prototype.get$name = function() { 5397 ParserTask.prototype.get$name = function() {
5385 return 'Parser'; 5398 return 'Parser';
5386 } 5399 }
5387 ParserTask.prototype.parse = function(element) { 5400 ParserTask.prototype.parse = function(element) {
5388 var $this = this; // closure support 5401 var $this = this; // closure support
5389 var $0; 5402 var $0;
5390 return (($0 = this.measure((function () { 5403 return (($0 = this.measure((function () {
5391 return element.parseNode($this.compiler, $this.compiler); 5404 return element.parseNode($this.compiler, $this.compiler);
5392 }) 5405 })
5393 )) && $0.is$Node()); 5406 )) && $0.is$Node());
5394 } 5407 }
5395 // ********** Code for Listener ************** 5408 // ********** Code for Listener **************
5396 function Listener() {} 5409 function Listener() {
5410 // Initializers done
5411 }
5397 Listener.prototype.beginArguments = function(token) { 5412 Listener.prototype.beginArguments = function(token) {
5398 5413
5399 } 5414 }
5400 Listener.prototype.endArguments = function(count, beginToken, endToken) { 5415 Listener.prototype.endArguments = function(count, beginToken, endToken) {
5401 5416
5402 } 5417 }
5403 Listener.prototype.beginBlock = function(token) { 5418 Listener.prototype.beginBlock = function(token) {
5404 5419
5405 } 5420 }
5406 Listener.prototype.endBlock = function(count, beginToken, endToken) { 5421 Listener.prototype.endBlock = function(count, beginToken, endToken) {
(...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after
5831 ParserError.prototype.toString$0 = function() { 5846 ParserError.prototype.toString$0 = function() {
5832 return this.toString(); 5847 return this.toString();
5833 }; 5848 };
5834 // ********** Code for ElementListener ************** 5849 // ********** Code for ElementListener **************
5835 function ElementListener(canceler) { 5850 function ElementListener(canceler) {
5836 this.previousIdentifier = null 5851 this.previousIdentifier = null
5837 this.nodes = const$14/*const EmptyLink()*/ 5852 this.nodes = const$14/*const EmptyLink()*/
5838 this.topLevelElements = const$14/*const EmptyLink()*/ 5853 this.topLevelElements = const$14/*const EmptyLink()*/
5839 this.canceler = canceler; 5854 this.canceler = canceler;
5840 // Initializers done 5855 // Initializers done
5856 Listener.call(this);
5841 } 5857 }
5842 $inherits(ElementListener, Listener); 5858 $inherits(ElementListener, Listener);
5843 ElementListener.prototype.beginLibraryTag = function(token) { 5859 ElementListener.prototype.beginLibraryTag = function(token) {
5844 this.canceler.cancel("Cannot handle library tags"); 5860 this.canceler.cancel("Cannot handle library tags");
5845 } 5861 }
5846 ElementListener.prototype.endClass = function(interfacesCount, beginToken, exten dsKeyword, implementsKeyword, endToken) { 5862 ElementListener.prototype.endClass = function(interfacesCount, beginToken, exten dsKeyword, implementsKeyword, endToken) {
5847 var $0; 5863 var $0;
5848 for (; interfacesCount > 0; --interfacesCount) { 5864 for (; interfacesCount > 0; --interfacesCount) {
5849 this.popNode(); 5865 this.popNode();
5850 } 5866 }
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
5964 }; 5980 };
5965 ElementListener.prototype.unexpected$1 = function($0) { 5981 ElementListener.prototype.unexpected$1 = function($0) {
5966 return this.unexpected(($0 && $0.is$Token())); 5982 return this.unexpected(($0 && $0.is$Token()));
5967 }; 5983 };
5968 ElementListener.prototype.unexpectedEof$0 = function() { 5984 ElementListener.prototype.unexpectedEof$0 = function() {
5969 return this.unexpectedEof(); 5985 return this.unexpectedEof();
5970 }; 5986 };
5971 // ********** Code for NodeListener ************** 5987 // ********** Code for NodeListener **************
5972 function NodeListener(canceler, logger) { 5988 function NodeListener(canceler, logger) {
5973 this.logger = logger; 5989 this.logger = logger;
5990 // Initializers done
5974 ElementListener.call(this, canceler); 5991 ElementListener.call(this, canceler);
5975 // Initializers done
5976 this.onError = this.get$handleOnError(); 5992 this.onError = this.get$handleOnError();
5977 } 5993 }
5978 $inherits(NodeListener, ElementListener); 5994 $inherits(NodeListener, ElementListener);
5979 NodeListener.prototype.endClass = function(interfacesCount, beginToken, extendsK eyword, implementsKeyword, endToken) { 5995 NodeListener.prototype.endClass = function(interfacesCount, beginToken, extendsK eyword, implementsKeyword, endToken) {
5980 var $0; 5996 var $0;
5981 var interfaces = this.makeNodeList(interfacesCount, implementsKeyword, null, " ,"); 5997 var interfaces = this.makeNodeList(interfacesCount, implementsKeyword, null, " ,");
5982 var supertype = (($0 = this.popNode()) && $0.is$TypeAnnotation()); 5998 var supertype = (($0 = this.popNode()) && $0.is$TypeAnnotation());
5983 var name = (($0 = this.popNode()) && $0.is$Identifier()); 5999 var name = (($0 = this.popNode()) && $0.is$Identifier());
5984 this.pushNode(new ClassNode(name, supertype, interfaces, beginToken, extendsKe yword, endToken)); 6000 this.pushNode(new ClassNode(name, supertype, interfaces, beginToken, extendsKe yword, endToken));
5985 } 6001 }
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
6215 NodeListener.prototype.handleVarKeyword$1 = function($0) { 6231 NodeListener.prototype.handleVarKeyword$1 = function($0) {
6216 return this.handleVarKeyword(($0 && $0.is$Token())); 6232 return this.handleVarKeyword(($0 && $0.is$Token()));
6217 }; 6233 };
6218 NodeListener.prototype.handleVoidKeyword$1 = function($0) { 6234 NodeListener.prototype.handleVoidKeyword$1 = function($0) {
6219 return this.handleVoidKeyword(($0 && $0.is$Token())); 6235 return this.handleVoidKeyword(($0 && $0.is$Token()));
6220 }; 6236 };
6221 // ********** Code for PartialFunctionElement ************** 6237 // ********** Code for PartialFunctionElement **************
6222 function PartialFunctionElement(name, beginToken, endToken) { 6238 function PartialFunctionElement(name, beginToken, endToken) {
6223 this.beginToken = beginToken; 6239 this.beginToken = beginToken;
6224 this.endToken = endToken; 6240 this.endToken = endToken;
6241 // Initializers done
6225 FunctionElement.call(this, name); 6242 FunctionElement.call(this, name);
6226 // Initializers done
6227 } 6243 }
6228 $inherits(PartialFunctionElement, FunctionElement); 6244 $inherits(PartialFunctionElement, FunctionElement);
6229 PartialFunctionElement.prototype.parseNode = function(canceler, logger) { 6245 PartialFunctionElement.prototype.parseNode = function(canceler, logger) {
6230 var $this = this; // closure support 6246 var $this = this; // closure support
6231 var $0; 6247 var $0;
6232 if (this.node != null) return this.node; 6248 if (this.node != null) return this.node;
6233 this.node = (($0 = parse(canceler, logger, (function (p) { 6249 this.node = (($0 = parse(canceler, logger, (function (p) {
6234 return p.parseFunction$1($this.beginToken); 6250 return p.parseFunction$1($this.beginToken);
6235 }) 6251 })
6236 )) && $0.is$FunctionExpression()); 6252 )) && $0.is$FunctionExpression());
6237 return this.node; 6253 return this.node;
6238 } 6254 }
6239 // ********** Code for PartialClassElement ************** 6255 // ********** Code for PartialClassElement **************
6240 function PartialClassElement(name, beginToken, endToken) { 6256 function PartialClassElement(name, beginToken, endToken) {
6241 this.beginToken = beginToken; 6257 this.beginToken = beginToken;
6242 this.endToken = endToken; 6258 this.endToken = endToken;
6259 // Initializers done
6243 ClassElement.call(this, name); 6260 ClassElement.call(this, name);
6244 // Initializers done
6245 } 6261 }
6246 $inherits(PartialClassElement, ClassElement); 6262 $inherits(PartialClassElement, ClassElement);
6247 PartialClassElement.prototype.parseNode = function(canceler, logger) { 6263 PartialClassElement.prototype.parseNode = function(canceler, logger) {
6248 var $this = this; // closure support 6264 var $this = this; // closure support
6249 var $0; 6265 var $0;
6250 if (this.node != null) return this.node; 6266 if (this.node != null) return this.node;
6251 this.node = (($0 = parse(canceler, logger, (function (p) { 6267 this.node = (($0 = parse(canceler, logger, (function (p) {
6252 return p.parseClass$1($this.beginToken); 6268 return p.parseClass$1($this.beginToken);
6253 }) 6269 })
6254 )) && $0.is$ClassNode()); 6270 )) && $0.is$ClassNode());
6255 return this.node; 6271 return this.node;
6256 } 6272 }
6257 // ********** Code for StringScanner ************** 6273 // ********** Code for StringScanner **************
6258 function StringScanner(string) { 6274 function StringScanner(string) {
6259 this.string = string; 6275 this.string = string;
6276 // Initializers done
6260 ArrayBasedScanner$SourceString.call(this); 6277 ArrayBasedScanner$SourceString.call(this);
6261 // Initializers done
6262 } 6278 }
6263 $inherits(StringScanner, ArrayBasedScanner$SourceString); 6279 $inherits(StringScanner, ArrayBasedScanner$SourceString);
6264 StringScanner.prototype.nextByte = function() { 6280 StringScanner.prototype.nextByte = function() {
6265 return this.charAt(++this.byteOffset); 6281 return this.charAt(++this.byteOffset);
6266 } 6282 }
6267 StringScanner.prototype.peek = function() { 6283 StringScanner.prototype.peek = function() {
6268 return this.charAt(this.byteOffset + 1); 6284 return this.charAt(this.byteOffset + 1);
6269 } 6285 }
6270 StringScanner.prototype.charAt = function(index) { 6286 StringScanner.prototype.charAt = function(index) {
6271 return (this.string.length > $assert_num(index)) ? this.string.charCodeAt($ass ert_num(index)) : -1; 6287 return (this.string.length > $assert_num(index)) ? this.string.charCodeAt($ass ert_num(index)) : -1;
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
6334 } 6350 }
6335 Token.prototype.next$0 = function() { 6351 Token.prototype.next$0 = function() {
6336 return this.next(); 6352 return this.next();
6337 }; 6353 };
6338 Token.prototype.toString$0 = function() { 6354 Token.prototype.toString$0 = function() {
6339 return this.toString(); 6355 return this.toString();
6340 }; 6356 };
6341 // ********** Code for KeywordToken ************** 6357 // ********** Code for KeywordToken **************
6342 function KeywordToken(value, charOffset) { 6358 function KeywordToken(value, charOffset) {
6343 this.value = value; 6359 this.value = value;
6360 // Initializers done
6344 Token.call(this, 107/*null.KEYWORD_TOKEN*/, charOffset); 6361 Token.call(this, 107/*null.KEYWORD_TOKEN*/, charOffset);
6345 // Initializers done
6346 } 6362 }
6347 $inherits(KeywordToken, Token); 6363 $inherits(KeywordToken, Token);
6348 KeywordToken.prototype.get$value = function() { return this.value; }; 6364 KeywordToken.prototype.get$value = function() { return this.value; };
6349 KeywordToken.prototype.get$stringValue = function() { 6365 KeywordToken.prototype.get$stringValue = function() {
6350 return this.value.syntax; 6366 return this.value.syntax;
6351 } 6367 }
6352 KeywordToken.prototype.toString = function() { 6368 KeywordToken.prototype.toString = function() {
6353 return this.value.syntax; 6369 return this.value.syntax;
6354 } 6370 }
6355 KeywordToken.prototype.toString$0 = function() { 6371 KeywordToken.prototype.toString$0 = function() {
6356 return this.toString(); 6372 return this.toString();
6357 }; 6373 };
6358 // ********** Code for StringToken ************** 6374 // ********** Code for StringToken **************
6359 function StringToken(kind, value, charOffset) { 6375 function StringToken(kind, value, charOffset) {
6376 // Initializers done
6360 StringToken.fromSource$ctor.call(this, kind, new StringWrapper(value), charOff set); 6377 StringToken.fromSource$ctor.call(this, kind, new StringWrapper(value), charOff set);
6361 // Initializers done
6362 } 6378 }
6363 StringToken.fromSource$ctor = function(kind, value, charOffset) { 6379 StringToken.fromSource$ctor = function(kind, value, charOffset) {
6364 this.value = value; 6380 this.value = value;
6381 // Initializers done
6365 Token.call(this, kind, charOffset); 6382 Token.call(this, kind, charOffset);
6366 // Initializers done
6367 } 6383 }
6368 StringToken.fromSource$ctor.prototype = StringToken.prototype; 6384 StringToken.fromSource$ctor.prototype = StringToken.prototype;
6369 $inherits(StringToken, Token); 6385 $inherits(StringToken, Token);
6370 StringToken.prototype.get$value = function() { return this.value; }; 6386 StringToken.prototype.get$value = function() { return this.value; };
6371 StringToken.prototype.get$stringValue = function() { 6387 StringToken.prototype.get$stringValue = function() {
6372 return this.value.get$stringValue(); 6388 return this.value.get$stringValue();
6373 } 6389 }
6374 StringToken.prototype.toString = function() { 6390 StringToken.prototype.toString = function() {
6375 return this.value.toString(); 6391 return this.value.toString();
6376 } 6392 }
(...skipping 25 matching lines...) Expand all
6402 return this.hashCode(); 6418 return this.hashCode();
6403 }; 6419 };
6404 StringWrapper.prototype.printOn$1 = function($0) { 6420 StringWrapper.prototype.printOn$1 = function($0) {
6405 return this.printOn(($0 && $0.is$StringBuffer())); 6421 return this.printOn(($0 && $0.is$StringBuffer()));
6406 }; 6422 };
6407 StringWrapper.prototype.toString$0 = function() { 6423 StringWrapper.prototype.toString$0 = function() {
6408 return this.toString(); 6424 return this.toString();
6409 }; 6425 };
6410 // ********** Code for BeginGroupToken ************** 6426 // ********** Code for BeginGroupToken **************
6411 function BeginGroupToken(kind, value, charOffset) { 6427 function BeginGroupToken(kind, value, charOffset) {
6428 // Initializers done
6412 StringToken.call(this, kind, value, charOffset); 6429 StringToken.call(this, kind, value, charOffset);
6413 // Initializers done
6414 } 6430 }
6415 $inherits(BeginGroupToken, StringToken); 6431 $inherits(BeginGroupToken, StringToken);
6416 BeginGroupToken.prototype.is$BeginGroupToken = function(){return this;}; 6432 BeginGroupToken.prototype.is$BeginGroupToken = function(){return this;};
6417 // ********** Code for Keyword ************** 6433 // ********** Code for Keyword **************
6418 function Keyword(syntax, isPseudo) { 6434 function Keyword(syntax, isPseudo) {
6419 this.syntax = syntax; 6435 this.syntax = syntax;
6420 this.isPseudo = isPseudo; 6436 this.isPseudo = isPseudo;
6421 // Initializers done 6437 // Initializers done
6422 } 6438 }
6423 Keyword.prototype.is$SourceString = function(){return this;}; 6439 Keyword.prototype.is$SourceString = function(){return this;};
(...skipping 29 matching lines...) Expand all
6453 Keyword.prototype.hashCode$0 = function() { 6469 Keyword.prototype.hashCode$0 = function() {
6454 return this.hashCode(); 6470 return this.hashCode();
6455 }; 6471 };
6456 Keyword.prototype.printOn$1 = function($0) { 6472 Keyword.prototype.printOn$1 = function($0) {
6457 return this.printOn(($0 && $0.is$StringBuffer())); 6473 return this.printOn(($0 && $0.is$StringBuffer()));
6458 }; 6474 };
6459 Keyword.prototype.toString$0 = function() { 6475 Keyword.prototype.toString$0 = function() {
6460 return this.toString(); 6476 return this.toString();
6461 }; 6477 };
6462 // ********** Code for KeywordState ************** 6478 // ********** Code for KeywordState **************
6463 function KeywordState() {} 6479 function KeywordState() {
6480 // Initializers done
6481 }
6464 KeywordState.prototype.is$KeywordState = function(){return this;}; 6482 KeywordState.prototype.is$KeywordState = function(){return this;};
6465 KeywordState.get$KEYWORD_STATE = function() { 6483 KeywordState.get$KEYWORD_STATE = function() {
6466 if (KeywordState._KEYWORD_STATE == null) { 6484 if (KeywordState._KEYWORD_STATE == null) {
6467 var strings = new ListFactory(const$232/*Keyword.values*/.get$length()); 6485 var strings = new ListFactory(const$232/*Keyword.values*/.get$length());
6468 for (var i = 0; 6486 for (var i = 0;
6469 i < const$232/*Keyword.values*/.get$length(); i++) { 6487 i < const$232/*Keyword.values*/.get$length(); i++) {
6470 strings.$setindex(i, const$232/*Keyword.values*/[i].syntax); 6488 strings.$setindex(i, const$232/*Keyword.values*/[i].syntax);
6471 } 6489 }
6472 strings.sort((function (a, b) { 6490 strings.sort((function (a, b) {
6473 return a.compareTo$1(b); 6491 return a.compareTo$1(b);
(...skipping 27 matching lines...) Expand all
6501 else { 6519 else {
6502 $assert(length == 1, "length == 1", "keyword.dart", 183, 14); 6520 $assert(length == 1, "length == 1", "keyword.dart", 183, 14);
6503 return new LeafKeywordState($assert_String(strings.$index(offset))); 6521 return new LeafKeywordState($assert_String(strings.$index(offset)));
6504 } 6522 }
6505 return new ArrayKeywordState(result); 6523 return new ArrayKeywordState(result);
6506 } 6524 }
6507 // ********** Code for ArrayKeywordState ************** 6525 // ********** Code for ArrayKeywordState **************
6508 function ArrayKeywordState(table) { 6526 function ArrayKeywordState(table) {
6509 this.table = table; 6527 this.table = table;
6510 // Initializers done 6528 // Initializers done
6529 KeywordState.call(this);
6511 } 6530 }
6512 $inherits(ArrayKeywordState, KeywordState); 6531 $inherits(ArrayKeywordState, KeywordState);
6513 ArrayKeywordState.prototype.isLeaf = function() { 6532 ArrayKeywordState.prototype.isLeaf = function() {
6514 return false; 6533 return false;
6515 } 6534 }
6516 ArrayKeywordState.prototype.next = function(c) { 6535 ArrayKeywordState.prototype.next = function(c) {
6517 var $0; 6536 var $0;
6518 return (($0 = this.table.$index(c - 97/*null.$a*/)) && $0.is$KeywordState()); 6537 return (($0 = this.table.$index(c - 97/*null.$a*/)) && $0.is$KeywordState());
6519 } 6538 }
6520 ArrayKeywordState.prototype.get$keyword = function() { 6539 ArrayKeywordState.prototype.get$keyword = function() {
(...skipping 12 matching lines...) Expand all
6533 sb.add("]"); 6552 sb.add("]");
6534 return sb.toString(); 6553 return sb.toString();
6535 } 6554 }
6536 ArrayKeywordState.prototype.toString$0 = function() { 6555 ArrayKeywordState.prototype.toString$0 = function() {
6537 return this.toString(); 6556 return this.toString();
6538 }; 6557 };
6539 // ********** Code for LeafKeywordState ************** 6558 // ********** Code for LeafKeywordState **************
6540 function LeafKeywordState(syntax) { 6559 function LeafKeywordState(syntax) {
6541 this.keyword = Keyword.get$keywords().$index(syntax); 6560 this.keyword = Keyword.get$keywords().$index(syntax);
6542 // Initializers done 6561 // Initializers done
6562 KeywordState.call(this);
6543 } 6563 }
6544 $inherits(LeafKeywordState, KeywordState); 6564 $inherits(LeafKeywordState, KeywordState);
6545 LeafKeywordState.prototype.get$keyword = function() { return this.keyword; }; 6565 LeafKeywordState.prototype.get$keyword = function() { return this.keyword; };
6546 LeafKeywordState.prototype.set$keyword = function(value) { return this.keyword = value; }; 6566 LeafKeywordState.prototype.set$keyword = function(value) { return this.keyword = value; };
6547 LeafKeywordState.prototype.isLeaf = function() { 6567 LeafKeywordState.prototype.isLeaf = function() {
6548 return true; 6568 return true;
6549 } 6569 }
6550 LeafKeywordState.prototype.next = function(c) { 6570 LeafKeywordState.prototype.next = function(c) {
6551 return null; 6571 return null;
6552 } 6572 }
6553 LeafKeywordState.prototype.toString = function() { 6573 LeafKeywordState.prototype.toString = function() {
6554 return this.keyword.syntax; 6574 return this.keyword.syntax;
6555 } 6575 }
6556 LeafKeywordState.prototype.toString$0 = function() { 6576 LeafKeywordState.prototype.toString$0 = function() {
6557 return this.toString(); 6577 return this.toString();
6558 }; 6578 };
6559 // ********** Code for top level ************** 6579 // ********** Code for top level **************
6560 function parse(canceler, logger, doParse) { 6580 function parse(canceler, logger, doParse) {
6561 var listener = new NodeListener(canceler, logger); 6581 var listener = new NodeListener(canceler, logger);
6562 doParse(new Parser(listener)); 6582 doParse(new Parser(listener));
6563 var node = listener.popNode(); 6583 var node = listener.popNode();
6564 logger.log(("parsed: " + node + "")); 6584 logger.log(("parsed: " + node + ""));
6565 return node; 6585 return node;
6566 } 6586 }
6567 // ********** Library tree ************** 6587 // ********** Library tree **************
6568 // ********** Code for Node ************** 6588 // ********** Code for Node **************
6569 function Node() {} 6589 function Node() {
6590 this._hashCode = (Math.random() * 0xFFFFFFFF).toInt();
6591 // Initializers done
6592 }
6570 Node.prototype.is$Node = function(){return this;}; 6593 Node.prototype.is$Node = function(){return this;};
6571 Node.prototype.hashCode = function() { 6594 Node.prototype.hashCode = function() {
6572 return this._hashCode; 6595 return this._hashCode;
6573 } 6596 }
6574 Node.prototype.toString = function() { 6597 Node.prototype.toString = function() {
6575 return this.unparse(); 6598 return this.unparse();
6576 } 6599 }
6577 Node.prototype.getObjectDescription = function() { 6600 Node.prototype.getObjectDescription = function() {
6578 return Object.prototype.toString.call(this); 6601 return Object.prototype.toString.call(this);
6579 } 6602 }
(...skipping 23 matching lines...) Expand all
6603 }; 6626 };
6604 // ********** Code for ClassNode ************** 6627 // ********** Code for ClassNode **************
6605 function ClassNode(name, superclass, interfaces, beginToken, extendsKeyword, end Token) { 6628 function ClassNode(name, superclass, interfaces, beginToken, extendsKeyword, end Token) {
6606 this.name = name; 6629 this.name = name;
6607 this.superclass = superclass; 6630 this.superclass = superclass;
6608 this.interfaces = interfaces; 6631 this.interfaces = interfaces;
6609 this.beginToken = beginToken; 6632 this.beginToken = beginToken;
6610 this.extendsKeyword = extendsKeyword; 6633 this.extendsKeyword = extendsKeyword;
6611 this.endToken = endToken; 6634 this.endToken = endToken;
6612 // Initializers done 6635 // Initializers done
6636 Node.call(this);
6613 } 6637 }
6614 $inherits(ClassNode, Node); 6638 $inherits(ClassNode, Node);
6615 ClassNode.prototype.is$ClassNode = function(){return this;}; 6639 ClassNode.prototype.is$ClassNode = function(){return this;};
6616 ClassNode.prototype.get$name = function() { return this.name; }; 6640 ClassNode.prototype.get$name = function() { return this.name; };
6617 ClassNode.prototype.get$interfaces = function() { return this.interfaces; }; 6641 ClassNode.prototype.get$interfaces = function() { return this.interfaces; };
6618 ClassNode.prototype.accept = function(visitor) { 6642 ClassNode.prototype.accept = function(visitor) {
6619 return visitor.visitClassNode(this); 6643 return visitor.visitClassNode(this);
6620 } 6644 }
6621 ClassNode.prototype.get$isInterface = function() { 6645 ClassNode.prototype.get$isInterface = function() {
6622 return this.beginToken.get$stringValue() === 'interface'; 6646 return this.beginToken.get$stringValue() === 'interface';
(...skipping 10 matching lines...) Expand all
6633 ClassNode.prototype.accept$1 = function($0) { 6657 ClassNode.prototype.accept$1 = function($0) {
6634 return this.accept(($0 && $0.is$Visitor())); 6658 return this.accept(($0 && $0.is$Visitor()));
6635 }; 6659 };
6636 ClassNode.prototype.getBeginToken$0 = function() { 6660 ClassNode.prototype.getBeginToken$0 = function() {
6637 return this.getBeginToken(); 6661 return this.getBeginToken();
6638 }; 6662 };
6639 ClassNode.prototype.getEndToken$0 = function() { 6663 ClassNode.prototype.getEndToken$0 = function() {
6640 return this.getEndToken(); 6664 return this.getEndToken();
6641 }; 6665 };
6642 // ********** Code for Expression ************** 6666 // ********** Code for Expression **************
6643 function Expression() {} 6667 function Expression() {
6668 // Initializers done
6669 Node.call(this);
6670 }
6644 $inherits(Expression, Node); 6671 $inherits(Expression, Node);
6645 Expression.prototype.is$Expression = function(){return this;}; 6672 Expression.prototype.is$Expression = function(){return this;};
6646 // ********** Code for Statement ************** 6673 // ********** Code for Statement **************
6647 function Statement() {} 6674 function Statement() {
6675 // Initializers done
6676 Node.call(this);
6677 }
6648 $inherits(Statement, Node); 6678 $inherits(Statement, Node);
6649 Statement.prototype.is$Statement = function(){return this;}; 6679 Statement.prototype.is$Statement = function(){return this;};
6650 // ********** Code for Send ************** 6680 // ********** Code for Send **************
6651 function Send(receiver, selector, argumentsNode) { 6681 function Send(receiver, selector, argumentsNode) {
6652 this.receiver = receiver; 6682 this.receiver = receiver;
6653 this.selector = selector; 6683 this.selector = selector;
6654 this.argumentsNode = argumentsNode; 6684 this.argumentsNode = argumentsNode;
6655 // Initializers done 6685 // Initializers done
6686 Expression.call(this);
6656 } 6687 }
6657 Send.postfix$ctor = function(receiver, selector) { 6688 Send.postfix$ctor = function(receiver, selector) {
6658 this.receiver = receiver; 6689 this.receiver = receiver;
6659 this.selector = selector; 6690 this.selector = selector;
6660 this.argumentsNode = const$249/*const Postfix()*/; 6691 this.argumentsNode = const$249/*const Postfix()*/;
6661 // Initializers done 6692 // Initializers done
6693 Expression.call(this);
6662 } 6694 }
6663 Send.postfix$ctor.prototype = Send.prototype; 6695 Send.postfix$ctor.prototype = Send.prototype;
6664 Send.prefix$ctor = function(receiver, selector) { 6696 Send.prefix$ctor = function(receiver, selector) {
6665 this.receiver = receiver; 6697 this.receiver = receiver;
6666 this.selector = selector; 6698 this.selector = selector;
6667 this.argumentsNode = const$248/*const Prefix()*/; 6699 this.argumentsNode = const$248/*const Prefix()*/;
6668 // Initializers done 6700 // Initializers done
6701 Expression.call(this);
6669 } 6702 }
6670 Send.prefix$ctor.prototype = Send.prototype; 6703 Send.prefix$ctor.prototype = Send.prototype;
6671 $inherits(Send, Expression); 6704 $inherits(Send, Expression);
6672 Send.prototype.is$Send = function(){return this;}; 6705 Send.prototype.is$Send = function(){return this;};
6673 Send.prototype.get$arguments = function() { 6706 Send.prototype.get$arguments = function() {
6674 return this.argumentsNode.nodes; 6707 return this.argumentsNode.nodes;
6675 } 6708 }
6676 Send.prototype.accept = function(visitor) { 6709 Send.prototype.accept = function(visitor) {
6677 return visitor.visitSend(this); 6710 return visitor.visitSend(this);
6678 } 6711 }
(...skipping 26 matching lines...) Expand all
6705 return this.accept(($0 && $0.is$Visitor())); 6738 return this.accept(($0 && $0.is$Visitor()));
6706 }; 6739 };
6707 Send.prototype.getBeginToken$0 = function() { 6740 Send.prototype.getBeginToken$0 = function() {
6708 return this.getBeginToken(); 6741 return this.getBeginToken();
6709 }; 6742 };
6710 Send.prototype.getEndToken$0 = function() { 6743 Send.prototype.getEndToken$0 = function() {
6711 return this.getEndToken(); 6744 return this.getEndToken();
6712 }; 6745 };
6713 // ********** Code for Postfix ************** 6746 // ********** Code for Postfix **************
6714 function Postfix() { 6747 function Postfix() {
6748 // Initializers done
6715 NodeList.call(this); 6749 NodeList.call(this);
6716 // Initializers done
6717 } 6750 }
6718 $inherits(Postfix, NodeList); 6751 $inherits(Postfix, NodeList);
6719 // ********** Code for Prefix ************** 6752 // ********** Code for Prefix **************
6720 function Prefix() { 6753 function Prefix() {
6754 // Initializers done
6721 NodeList.call(this); 6755 NodeList.call(this);
6722 // Initializers done
6723 } 6756 }
6724 $inherits(Prefix, NodeList); 6757 $inherits(Prefix, NodeList);
6725 // ********** Code for SendSet ************** 6758 // ********** Code for SendSet **************
6726 function SendSet(receiver, selector, assignmentOperator, argumentsNode) { 6759 function SendSet(receiver, selector, assignmentOperator, argumentsNode) {
6727 this.assignmentOperator = assignmentOperator; 6760 this.assignmentOperator = assignmentOperator;
6761 // Initializers done
6728 Send.call(this, receiver, selector, argumentsNode); 6762 Send.call(this, receiver, selector, argumentsNode);
6729 // Initializers done
6730 } 6763 }
6731 $inherits(SendSet, Send); 6764 $inherits(SendSet, Send);
6732 SendSet.prototype.is$SendSet = function(){return this;}; 6765 SendSet.prototype.is$SendSet = function(){return this;};
6733 SendSet.prototype.accept = function(visitor) { 6766 SendSet.prototype.accept = function(visitor) {
6734 return visitor.visitSendSet(this); 6767 return visitor.visitSendSet(this);
6735 } 6768 }
6736 SendSet.prototype.accept$1 = function($0) { 6769 SendSet.prototype.accept$1 = function($0) {
6737 return this.accept(($0 && $0.is$Visitor())); 6770 return this.accept(($0 && $0.is$Visitor()));
6738 }; 6771 };
6739 // ********** Code for NodeList ************** 6772 // ********** Code for NodeList **************
6740 function NodeList(beginToken, nodes, endToken, delimiter) { 6773 function NodeList(beginToken, nodes, endToken, delimiter) {
6741 this.beginToken = beginToken; 6774 this.beginToken = beginToken;
6742 this.nodes = nodes; 6775 this.nodes = nodes;
6743 this.endToken = endToken; 6776 this.endToken = endToken;
6744 this.delimiter = delimiter; 6777 this.delimiter = delimiter;
6745 // Initializers done 6778 // Initializers done
6779 Node.call(this);
6746 } 6780 }
6747 NodeList.singleton$ctor = function(node) { 6781 NodeList.singleton$ctor = function(node) {
6782 // Initializers done
6748 NodeList.call(this, null, LinkFactory.Link$factory(node)); 6783 NodeList.call(this, null, LinkFactory.Link$factory(node));
6749 // Initializers done
6750 } 6784 }
6751 NodeList.singleton$ctor.prototype = NodeList.prototype; 6785 NodeList.singleton$ctor.prototype = NodeList.prototype;
6752 $inherits(NodeList, Node); 6786 $inherits(NodeList, Node);
6753 NodeList.prototype.is$NodeList = function(){return this;}; 6787 NodeList.prototype.is$NodeList = function(){return this;};
6754 NodeList.prototype.accept = function(visitor) { 6788 NodeList.prototype.accept = function(visitor) {
6755 return visitor.visitNodeList(this); 6789 return visitor.visitNodeList(this);
6756 } 6790 }
6757 NodeList.prototype.getBeginToken = function() { 6791 NodeList.prototype.getBeginToken = function() {
6758 var $0; 6792 var $0;
6759 if (this.beginToken != null) return this.beginToken; 6793 if (this.beginToken != null) return this.beginToken;
(...skipping 27 matching lines...) Expand all
6787 NodeList.prototype.getBeginToken$0 = function() { 6821 NodeList.prototype.getBeginToken$0 = function() {
6788 return this.getBeginToken(); 6822 return this.getBeginToken();
6789 }; 6823 };
6790 NodeList.prototype.getEndToken$0 = function() { 6824 NodeList.prototype.getEndToken$0 = function() {
6791 return this.getEndToken(); 6825 return this.getEndToken();
6792 }; 6826 };
6793 // ********** Code for Block ************** 6827 // ********** Code for Block **************
6794 function Block(statements) { 6828 function Block(statements) {
6795 this.statements = statements; 6829 this.statements = statements;
6796 // Initializers done 6830 // Initializers done
6831 Statement.call(this);
6797 } 6832 }
6798 $inherits(Block, Statement); 6833 $inherits(Block, Statement);
6799 Block.prototype.accept = function(visitor) { 6834 Block.prototype.accept = function(visitor) {
6800 return visitor.visitBlock(this); 6835 return visitor.visitBlock(this);
6801 } 6836 }
6802 Block.prototype.getBeginToken = function() { 6837 Block.prototype.getBeginToken = function() {
6803 return this.statements.getBeginToken(); 6838 return this.statements.getBeginToken();
6804 } 6839 }
6805 Block.prototype.getEndToken = function() { 6840 Block.prototype.getEndToken = function() {
6806 return this.statements.getEndToken(); 6841 return this.statements.getEndToken();
6807 } 6842 }
6808 Block.prototype.accept$1 = function($0) { 6843 Block.prototype.accept$1 = function($0) {
6809 return this.accept(($0 && $0.is$Visitor())); 6844 return this.accept(($0 && $0.is$Visitor()));
6810 }; 6845 };
6811 Block.prototype.getBeginToken$0 = function() { 6846 Block.prototype.getBeginToken$0 = function() {
6812 return this.getBeginToken(); 6847 return this.getBeginToken();
6813 }; 6848 };
6814 Block.prototype.getEndToken$0 = function() { 6849 Block.prototype.getEndToken$0 = function() {
6815 return this.getEndToken(); 6850 return this.getEndToken();
6816 }; 6851 };
6817 // ********** Code for If ************** 6852 // ********** Code for If **************
6818 function If(condition, thenPart, elsePart, ifToken, elseToken) { 6853 function If(condition, thenPart, elsePart, ifToken, elseToken) {
6819 this.condition = condition; 6854 this.condition = condition;
6820 this.thenPart = thenPart; 6855 this.thenPart = thenPart;
6821 this.elsePart = elsePart; 6856 this.elsePart = elsePart;
6822 this.ifToken = ifToken; 6857 this.ifToken = ifToken;
6823 this.elseToken = elseToken; 6858 this.elseToken = elseToken;
6824 // Initializers done 6859 // Initializers done
6860 Statement.call(this);
6825 } 6861 }
6826 $inherits(If, Statement); 6862 $inherits(If, Statement);
6827 If.prototype.get$hasElsePart = function() { 6863 If.prototype.get$hasElsePart = function() {
6828 return this.elsePart != null; 6864 return this.elsePart != null;
6829 } 6865 }
6830 If.prototype.accept = function(visitor) { 6866 If.prototype.accept = function(visitor) {
6831 return visitor.visitIf(this); 6867 return visitor.visitIf(this);
6832 } 6868 }
6833 If.prototype.getBeginToken = function() { 6869 If.prototype.getBeginToken = function() {
6834 return this.ifToken; 6870 return this.ifToken;
(...skipping 12 matching lines...) Expand all
6847 return this.getEndToken(); 6883 return this.getEndToken();
6848 }; 6884 };
6849 // ********** Code for For ************** 6885 // ********** Code for For **************
6850 function For(initializer, condition, update, body, forToken) { 6886 function For(initializer, condition, update, body, forToken) {
6851 this.initializer = initializer; 6887 this.initializer = initializer;
6852 this.condition = condition; 6888 this.condition = condition;
6853 this.update = update; 6889 this.update = update;
6854 this.body = body; 6890 this.body = body;
6855 this.forToken = forToken; 6891 this.forToken = forToken;
6856 // Initializers done 6892 // Initializers done
6893 Statement.call(this);
6857 } 6894 }
6858 $inherits(For, Statement); 6895 $inherits(For, Statement);
6859 For.prototype.accept = function(visitor) { 6896 For.prototype.accept = function(visitor) {
6860 return visitor.visitFor(this); 6897 return visitor.visitFor(this);
6861 } 6898 }
6862 For.prototype.getBeginToken = function() { 6899 For.prototype.getBeginToken = function() {
6863 return this.forToken; 6900 return this.forToken;
6864 } 6901 }
6865 For.prototype.getEndToken = function() { 6902 For.prototype.getEndToken = function() {
6866 return this.body.getEndToken(); 6903 return this.body.getEndToken();
6867 } 6904 }
6868 For.prototype.accept$1 = function($0) { 6905 For.prototype.accept$1 = function($0) {
6869 return this.accept(($0 && $0.is$Visitor())); 6906 return this.accept(($0 && $0.is$Visitor()));
6870 }; 6907 };
6871 For.prototype.getBeginToken$0 = function() { 6908 For.prototype.getBeginToken$0 = function() {
6872 return this.getBeginToken(); 6909 return this.getBeginToken();
6873 }; 6910 };
6874 For.prototype.getEndToken$0 = function() { 6911 For.prototype.getEndToken$0 = function() {
6875 return this.getEndToken(); 6912 return this.getEndToken();
6876 }; 6913 };
6877 // ********** Code for FunctionExpression ************** 6914 // ********** Code for FunctionExpression **************
6878 function FunctionExpression(name, parameters, body, returnType) { 6915 function FunctionExpression(name, parameters, body, returnType) {
6879 this.name = name; 6916 this.name = name;
6880 this.parameters = parameters; 6917 this.parameters = parameters;
6881 this.body = body; 6918 this.body = body;
6882 this.returnType = returnType; 6919 this.returnType = returnType;
6883 // Initializers done 6920 // Initializers done
6921 Expression.call(this);
6884 } 6922 }
6885 $inherits(FunctionExpression, Expression); 6923 $inherits(FunctionExpression, Expression);
6886 FunctionExpression.prototype.is$FunctionExpression = function(){return this;}; 6924 FunctionExpression.prototype.is$FunctionExpression = function(){return this;};
6887 FunctionExpression.prototype.get$name = function() { return this.name; }; 6925 FunctionExpression.prototype.get$name = function() { return this.name; };
6888 FunctionExpression.prototype.get$parameters = function() { return this.parameter s; }; 6926 FunctionExpression.prototype.get$parameters = function() { return this.parameter s; };
6889 FunctionExpression.prototype.get$returnType = function() { return this.returnTyp e; }; 6927 FunctionExpression.prototype.get$returnType = function() { return this.returnTyp e; };
6890 FunctionExpression.prototype.accept = function(visitor) { 6928 FunctionExpression.prototype.accept = function(visitor) {
6891 return visitor.visitFunctionExpression(this); 6929 return visitor.visitFunctionExpression(this);
6892 } 6930 }
6893 FunctionExpression.prototype.getBeginToken = function() { 6931 FunctionExpression.prototype.getBeginToken = function() {
6894 return firstBeginToken(this.returnType, this.name); 6932 return firstBeginToken(this.returnType, this.name);
6895 } 6933 }
6896 FunctionExpression.prototype.getEndToken = function() { 6934 FunctionExpression.prototype.getEndToken = function() {
6897 return this.body.getEndToken(); 6935 return this.body.getEndToken();
6898 } 6936 }
6899 FunctionExpression.prototype.accept$1 = function($0) { 6937 FunctionExpression.prototype.accept$1 = function($0) {
6900 return this.accept(($0 && $0.is$Visitor())); 6938 return this.accept(($0 && $0.is$Visitor()));
6901 }; 6939 };
6902 FunctionExpression.prototype.getBeginToken$0 = function() { 6940 FunctionExpression.prototype.getBeginToken$0 = function() {
6903 return this.getBeginToken(); 6941 return this.getBeginToken();
6904 }; 6942 };
6905 FunctionExpression.prototype.getEndToken$0 = function() { 6943 FunctionExpression.prototype.getEndToken$0 = function() {
6906 return this.getEndToken(); 6944 return this.getEndToken();
6907 }; 6945 };
6908 // ********** Code for Literal ************** 6946 // ********** Code for Literal **************
6909 function Literal(token, handler) { 6947 function Literal(token, handler) {
6910 this.token = token; 6948 this.token = token;
6911 this.handler = handler; 6949 this.handler = handler;
6912 // Initializers done 6950 // Initializers done
6951 Expression.call(this);
6913 } 6952 }
6914 $inherits(Literal, Expression); 6953 $inherits(Literal, Expression);
6915 Literal.prototype.getBeginToken = function() { 6954 Literal.prototype.getBeginToken = function() {
6916 return this.token; 6955 return this.token;
6917 } 6956 }
6918 Literal.prototype.getEndToken = function() { 6957 Literal.prototype.getEndToken = function() {
6919 return this.token; 6958 return this.token;
6920 } 6959 }
6921 Literal.prototype.getBeginToken$0 = function() { 6960 Literal.prototype.getBeginToken$0 = function() {
6922 return this.getBeginToken(); 6961 return this.getBeginToken();
6923 }; 6962 };
6924 Literal.prototype.getEndToken$0 = function() { 6963 Literal.prototype.getEndToken$0 = function() {
6925 return this.getEndToken(); 6964 return this.getEndToken();
6926 }; 6965 };
6927 // ********** Code for Literal$SourceString ************** 6966 // ********** Code for Literal$SourceString **************
6928 function Literal$SourceString(token, handler) { 6967 function Literal$SourceString(token, handler) {
6929 this.token = token; 6968 this.token = token;
6930 this.handler = handler; 6969 this.handler = handler;
6931 // Initializers done 6970 // Initializers done
6971 Expression.call(this);
6932 } 6972 }
6933 $inherits(Literal$SourceString, Literal); 6973 $inherits(Literal$SourceString, Literal);
6934 // ********** Code for Literal$bool ************** 6974 // ********** Code for Literal$bool **************
6935 function Literal$bool(token, handler) { 6975 function Literal$bool(token, handler) {
6936 this.token = token; 6976 this.token = token;
6937 this.handler = handler; 6977 this.handler = handler;
6938 // Initializers done 6978 // Initializers done
6979 Expression.call(this);
6939 } 6980 }
6940 $inherits(Literal$bool, Literal); 6981 $inherits(Literal$bool, Literal);
6941 // ********** Code for Literal$double ************** 6982 // ********** Code for Literal$double **************
6942 function Literal$double(token, handler) { 6983 function Literal$double(token, handler) {
6943 this.token = token; 6984 this.token = token;
6944 this.handler = handler; 6985 this.handler = handler;
6945 // Initializers done 6986 // Initializers done
6987 Expression.call(this);
6946 } 6988 }
6947 $inherits(Literal$double, Literal); 6989 $inherits(Literal$double, Literal);
6948 // ********** Code for Literal$int ************** 6990 // ********** Code for Literal$int **************
6949 function Literal$int(token, handler) { 6991 function Literal$int(token, handler) {
6950 this.token = token; 6992 this.token = token;
6951 this.handler = handler; 6993 this.handler = handler;
6952 // Initializers done 6994 // Initializers done
6995 Expression.call(this);
6953 } 6996 }
6954 $inherits(Literal$int, Literal); 6997 $inherits(Literal$int, Literal);
6955 // ********** Code for LiteralInt ************** 6998 // ********** Code for LiteralInt **************
6956 function LiteralInt(token, handler) { 6999 function LiteralInt(token, handler) {
7000 // Initializers done
6957 Literal$int.call(this, token, handler); 7001 Literal$int.call(this, token, handler);
6958 // Initializers done
6959 } 7002 }
6960 $inherits(LiteralInt, Literal$int); 7003 $inherits(LiteralInt, Literal$int);
6961 LiteralInt.prototype.get$value = function() { 7004 LiteralInt.prototype.get$value = function() {
6962 try { 7005 try {
6963 return Math.parseInt(this.token.get$value().toString$0()); 7006 return Math.parseInt(this.token.get$value().toString$0());
6964 } catch (ex) { 7007 } catch (ex) {
6965 ex = $toDartException(ex); 7008 ex = $toDartException(ex);
6966 if (!(ex instanceof BadNumberFormatException)) throw ex; 7009 if (!(ex instanceof BadNumberFormatException)) throw ex;
6967 (this.handler)(this.token, ex); 7010 (this.handler)(this.token, ex);
6968 } 7011 }
6969 } 7012 }
6970 LiteralInt.prototype.accept = function(visitor) { 7013 LiteralInt.prototype.accept = function(visitor) {
6971 return visitor.visitLiteralInt(this); 7014 return visitor.visitLiteralInt(this);
6972 } 7015 }
6973 LiteralInt.prototype.accept$1 = function($0) { 7016 LiteralInt.prototype.accept$1 = function($0) {
6974 return this.accept(($0 && $0.is$Visitor())); 7017 return this.accept(($0 && $0.is$Visitor()));
6975 }; 7018 };
6976 // ********** Code for LiteralDouble ************** 7019 // ********** Code for LiteralDouble **************
6977 function LiteralDouble(token, handler) { 7020 function LiteralDouble(token, handler) {
7021 // Initializers done
6978 Literal$double.call(this, token, handler); 7022 Literal$double.call(this, token, handler);
6979 // Initializers done
6980 } 7023 }
6981 $inherits(LiteralDouble, Literal$double); 7024 $inherits(LiteralDouble, Literal$double);
6982 LiteralDouble.prototype.get$value = function() { 7025 LiteralDouble.prototype.get$value = function() {
6983 try { 7026 try {
6984 return Math.parseDouble(this.token.get$value().toString$0()); 7027 return Math.parseDouble(this.token.get$value().toString$0());
6985 } catch (ex) { 7028 } catch (ex) {
6986 ex = $toDartException(ex); 7029 ex = $toDartException(ex);
6987 if (!(ex instanceof BadNumberFormatException)) throw ex; 7030 if (!(ex instanceof BadNumberFormatException)) throw ex;
6988 (this.handler)(this.token, ex); 7031 (this.handler)(this.token, ex);
6989 } 7032 }
6990 } 7033 }
6991 LiteralDouble.prototype.accept = function(visitor) { 7034 LiteralDouble.prototype.accept = function(visitor) {
6992 return visitor.visitLiteralDouble(this); 7035 return visitor.visitLiteralDouble(this);
6993 } 7036 }
6994 LiteralDouble.prototype.accept$1 = function($0) { 7037 LiteralDouble.prototype.accept$1 = function($0) {
6995 return this.accept(($0 && $0.is$Visitor())); 7038 return this.accept(($0 && $0.is$Visitor()));
6996 }; 7039 };
6997 // ********** Code for LiteralBool ************** 7040 // ********** Code for LiteralBool **************
6998 function LiteralBool(token, handler) { 7041 function LiteralBool(token, handler) {
7042 // Initializers done
6999 Literal$bool.call(this, token, handler); 7043 Literal$bool.call(this, token, handler);
7000 // Initializers done
7001 } 7044 }
7002 $inherits(LiteralBool, Literal$bool); 7045 $inherits(LiteralBool, Literal$bool);
7003 LiteralBool.prototype.get$value = function() { 7046 LiteralBool.prototype.get$value = function() {
7004 switch (this.token.get$value()) { 7047 switch (this.token.get$value()) {
7005 case const$188/*Keyword.TRUE*/: 7048 case const$188/*Keyword.TRUE*/:
7006 7049
7007 return true; 7050 return true;
7008 7051
7009 case const$160/*Keyword.FALSE*/: 7052 case const$160/*Keyword.FALSE*/:
7010 7053
7011 return false; 7054 return false;
7012 7055
7013 default: 7056 default:
7014 7057
7015 (this.handler)(this.token, ("not a bool " + this.token.get$value() + "")); 7058 (this.handler)(this.token, ("not a bool " + this.token.get$value() + ""));
7016 7059
7017 } 7060 }
7018 } 7061 }
7019 LiteralBool.prototype.accept = function(visitor) { 7062 LiteralBool.prototype.accept = function(visitor) {
7020 return visitor.visitLiteralBool(this); 7063 return visitor.visitLiteralBool(this);
7021 } 7064 }
7022 LiteralBool.prototype.accept$1 = function($0) { 7065 LiteralBool.prototype.accept$1 = function($0) {
7023 return this.accept(($0 && $0.is$Visitor())); 7066 return this.accept(($0 && $0.is$Visitor()));
7024 }; 7067 };
7025 // ********** Code for LiteralString ************** 7068 // ********** Code for LiteralString **************
7026 function LiteralString(token) { 7069 function LiteralString(token) {
7070 // Initializers done
7027 Literal$SourceString.call(this, token, to$call$2(null)); 7071 Literal$SourceString.call(this, token, to$call$2(null));
7028 // Initializers done
7029 } 7072 }
7030 $inherits(LiteralString, Literal$SourceString); 7073 $inherits(LiteralString, Literal$SourceString);
7031 LiteralString.prototype.is$LiteralString = function(){return this;}; 7074 LiteralString.prototype.is$LiteralString = function(){return this;};
7032 LiteralString.prototype.get$value = function() { 7075 LiteralString.prototype.get$value = function() {
7033 var $0; 7076 var $0;
7034 return (($0 = this.token.get$value()) && $0.is$SourceString()); 7077 return (($0 = this.token.get$value()) && $0.is$SourceString());
7035 } 7078 }
7036 LiteralString.prototype.accept = function(visitor) { 7079 LiteralString.prototype.accept = function(visitor) {
7037 return visitor.visitLiteralString(this); 7080 return visitor.visitLiteralString(this);
7038 } 7081 }
7039 LiteralString.prototype.accept$1 = function($0) { 7082 LiteralString.prototype.accept$1 = function($0) {
7040 return this.accept(($0 && $0.is$Visitor())); 7083 return this.accept(($0 && $0.is$Visitor()));
7041 }; 7084 };
7042 // ********** Code for Identifier ************** 7085 // ********** Code for Identifier **************
7043 function Identifier(token) { 7086 function Identifier(token) {
7044 this.token = token; 7087 this.token = token;
7045 // Initializers done 7088 // Initializers done
7089 Expression.call(this);
7046 } 7090 }
7047 $inherits(Identifier, Expression); 7091 $inherits(Identifier, Expression);
7048 Identifier.prototype.is$Identifier = function(){return this;}; 7092 Identifier.prototype.is$Identifier = function(){return this;};
7049 Identifier.prototype.get$source = function() { 7093 Identifier.prototype.get$source = function() {
7050 var $0; 7094 var $0;
7051 return (($0 = this.token.get$value()) && $0.is$SourceString()); 7095 return (($0 = this.token.get$value()) && $0.is$SourceString());
7052 } 7096 }
7053 Identifier.prototype.accept = function(visitor) { 7097 Identifier.prototype.accept = function(visitor) {
7054 return visitor.visitIdentifier(this); 7098 return visitor.visitIdentifier(this);
7055 } 7099 }
7056 Identifier.prototype.getBeginToken = function() { 7100 Identifier.prototype.getBeginToken = function() {
7057 return this.token; 7101 return this.token;
7058 } 7102 }
7059 Identifier.prototype.getEndToken = function() { 7103 Identifier.prototype.getEndToken = function() {
7060 return this.token; 7104 return this.token;
7061 } 7105 }
7062 Identifier.prototype.accept$1 = function($0) { 7106 Identifier.prototype.accept$1 = function($0) {
7063 return this.accept(($0 && $0.is$Visitor())); 7107 return this.accept(($0 && $0.is$Visitor()));
7064 }; 7108 };
7065 Identifier.prototype.getBeginToken$0 = function() { 7109 Identifier.prototype.getBeginToken$0 = function() {
7066 return this.getBeginToken(); 7110 return this.getBeginToken();
7067 }; 7111 };
7068 Identifier.prototype.getEndToken$0 = function() { 7112 Identifier.prototype.getEndToken$0 = function() {
7069 return this.getEndToken(); 7113 return this.getEndToken();
7070 }; 7114 };
7071 // ********** Code for Operator ************** 7115 // ********** Code for Operator **************
7072 function Operator(token) { 7116 function Operator(token) {
7117 // Initializers done
7073 Identifier.call(this, token); 7118 Identifier.call(this, token);
7074 // Initializers done
7075 } 7119 }
7076 $inherits(Operator, Identifier); 7120 $inherits(Operator, Identifier);
7077 Operator.prototype.is$Operator = function(){return this;}; 7121 Operator.prototype.is$Operator = function(){return this;};
7078 Operator.prototype.accept = function(visitor) { 7122 Operator.prototype.accept = function(visitor) {
7079 return visitor.visitOperator(this); 7123 return visitor.visitOperator(this);
7080 } 7124 }
7081 Operator.prototype.accept$1 = function($0) { 7125 Operator.prototype.accept$1 = function($0) {
7082 return this.accept(($0 && $0.is$Visitor())); 7126 return this.accept(($0 && $0.is$Visitor()));
7083 }; 7127 };
7084 // ********** Code for Return ************** 7128 // ********** Code for Return **************
7085 function Return(beginToken, endToken, expression) { 7129 function Return(beginToken, endToken, expression) {
7086 this.beginToken = beginToken; 7130 this.beginToken = beginToken;
7087 this.endToken = endToken; 7131 this.endToken = endToken;
7088 this.expression = expression; 7132 this.expression = expression;
7089 // Initializers done 7133 // Initializers done
7134 Statement.call(this);
7090 } 7135 }
7091 $inherits(Return, Statement); 7136 $inherits(Return, Statement);
7092 Return.prototype.get$hasExpression = function() { 7137 Return.prototype.get$hasExpression = function() {
7093 return this.expression != null; 7138 return this.expression != null;
7094 } 7139 }
7095 Return.prototype.accept = function(visitor) { 7140 Return.prototype.accept = function(visitor) {
7096 return visitor.visitReturn(this); 7141 return visitor.visitReturn(this);
7097 } 7142 }
7098 Return.prototype.getBeginToken = function() { 7143 Return.prototype.getBeginToken = function() {
7099 return this.beginToken; 7144 return this.beginToken;
7100 } 7145 }
7101 Return.prototype.getEndToken = function() { 7146 Return.prototype.getEndToken = function() {
7102 return this.endToken; 7147 return this.endToken;
7103 } 7148 }
7104 Return.prototype.accept$1 = function($0) { 7149 Return.prototype.accept$1 = function($0) {
7105 return this.accept(($0 && $0.is$Visitor())); 7150 return this.accept(($0 && $0.is$Visitor()));
7106 }; 7151 };
7107 Return.prototype.getBeginToken$0 = function() { 7152 Return.prototype.getBeginToken$0 = function() {
7108 return this.getBeginToken(); 7153 return this.getBeginToken();
7109 }; 7154 };
7110 Return.prototype.getEndToken$0 = function() { 7155 Return.prototype.getEndToken$0 = function() {
7111 return this.getEndToken(); 7156 return this.getEndToken();
7112 }; 7157 };
7113 // ********** Code for ExpressionStatement ************** 7158 // ********** Code for ExpressionStatement **************
7114 function ExpressionStatement(expression, endToken) { 7159 function ExpressionStatement(expression, endToken) {
7115 this.expression = expression; 7160 this.expression = expression;
7116 this.endToken = endToken; 7161 this.endToken = endToken;
7117 // Initializers done 7162 // Initializers done
7163 Statement.call(this);
7118 } 7164 }
7119 $inherits(ExpressionStatement, Statement); 7165 $inherits(ExpressionStatement, Statement);
7120 ExpressionStatement.prototype.is$ExpressionStatement = function(){return this;}; 7166 ExpressionStatement.prototype.is$ExpressionStatement = function(){return this;};
7121 ExpressionStatement.prototype.accept = function(visitor) { 7167 ExpressionStatement.prototype.accept = function(visitor) {
7122 return visitor.visitExpressionStatement(this); 7168 return visitor.visitExpressionStatement(this);
7123 } 7169 }
7124 ExpressionStatement.prototype.getBeginToken = function() { 7170 ExpressionStatement.prototype.getBeginToken = function() {
7125 var $0; 7171 var $0;
7126 return (($0 = this.expression.getBeginToken()) && $0.is$Token()); 7172 return (($0 = this.expression.getBeginToken()) && $0.is$Token());
7127 } 7173 }
7128 ExpressionStatement.prototype.getEndToken = function() { 7174 ExpressionStatement.prototype.getEndToken = function() {
7129 return this.endToken; 7175 return this.endToken;
7130 } 7176 }
7131 ExpressionStatement.prototype.accept$1 = function($0) { 7177 ExpressionStatement.prototype.accept$1 = function($0) {
7132 return this.accept(($0 && $0.is$Visitor())); 7178 return this.accept(($0 && $0.is$Visitor()));
7133 }; 7179 };
7134 ExpressionStatement.prototype.getBeginToken$0 = function() { 7180 ExpressionStatement.prototype.getBeginToken$0 = function() {
7135 return this.getBeginToken(); 7181 return this.getBeginToken();
7136 }; 7182 };
7137 ExpressionStatement.prototype.getEndToken$0 = function() { 7183 ExpressionStatement.prototype.getEndToken$0 = function() {
7138 return this.getEndToken(); 7184 return this.getEndToken();
7139 }; 7185 };
7140 // ********** Code for Throw ************** 7186 // ********** Code for Throw **************
7141 function Throw(expression, throwToken, endToken) { 7187 function Throw(expression, throwToken, endToken) {
7142 this.expression = expression; 7188 this.expression = expression;
7143 this.throwToken = throwToken; 7189 this.throwToken = throwToken;
7144 this.endToken = endToken; 7190 this.endToken = endToken;
7145 // Initializers done 7191 // Initializers done
7192 Statement.call(this);
7146 } 7193 }
7147 $inherits(Throw, Statement); 7194 $inherits(Throw, Statement);
7148 Throw.prototype.accept = function(visitor) { 7195 Throw.prototype.accept = function(visitor) {
7149 return visitor.visitThrow(this); 7196 return visitor.visitThrow(this);
7150 } 7197 }
7151 Throw.prototype.getBeginToken = function() { 7198 Throw.prototype.getBeginToken = function() {
7152 return this.throwToken; 7199 return this.throwToken;
7153 } 7200 }
7154 Throw.prototype.getEndToken = function() { 7201 Throw.prototype.getEndToken = function() {
7155 return this.endToken; 7202 return this.endToken;
7156 } 7203 }
7157 Throw.prototype.accept$1 = function($0) { 7204 Throw.prototype.accept$1 = function($0) {
7158 return this.accept(($0 && $0.is$Visitor())); 7205 return this.accept(($0 && $0.is$Visitor()));
7159 }; 7206 };
7160 Throw.prototype.getBeginToken$0 = function() { 7207 Throw.prototype.getBeginToken$0 = function() {
7161 return this.getBeginToken(); 7208 return this.getBeginToken();
7162 }; 7209 };
7163 Throw.prototype.getEndToken$0 = function() { 7210 Throw.prototype.getEndToken$0 = function() {
7164 return this.getEndToken(); 7211 return this.getEndToken();
7165 }; 7212 };
7166 // ********** Code for TypeAnnotation ************** 7213 // ********** Code for TypeAnnotation **************
7167 function TypeAnnotation(typeName) { 7214 function TypeAnnotation(typeName) {
7168 this.typeName = typeName; 7215 this.typeName = typeName;
7169 // Initializers done 7216 // Initializers done
7217 Node.call(this);
7170 } 7218 }
7171 $inherits(TypeAnnotation, Node); 7219 $inherits(TypeAnnotation, Node);
7172 TypeAnnotation.prototype.is$TypeAnnotation = function(){return this;}; 7220 TypeAnnotation.prototype.is$TypeAnnotation = function(){return this;};
7173 TypeAnnotation.prototype.get$typeName = function() { return this.typeName; }; 7221 TypeAnnotation.prototype.get$typeName = function() { return this.typeName; };
7174 TypeAnnotation.prototype.accept = function(visitor) { 7222 TypeAnnotation.prototype.accept = function(visitor) {
7175 return visitor.visitTypeAnnotation(this); 7223 return visitor.visitTypeAnnotation(this);
7176 } 7224 }
7177 TypeAnnotation.prototype.getBeginToken = function() { 7225 TypeAnnotation.prototype.getBeginToken = function() {
7178 var $0; 7226 var $0;
7179 return (($0 = this.typeName.getBeginToken()) && $0.is$Token()); 7227 return (($0 = this.typeName.getBeginToken()) && $0.is$Token());
(...skipping 11 matching lines...) Expand all
7191 TypeAnnotation.prototype.getEndToken$0 = function() { 7239 TypeAnnotation.prototype.getEndToken$0 = function() {
7192 return this.getEndToken(); 7240 return this.getEndToken();
7193 }; 7241 };
7194 // ********** Code for VariableDefinitions ************** 7242 // ********** Code for VariableDefinitions **************
7195 function VariableDefinitions(type, modifiers, definitions, endToken) { 7243 function VariableDefinitions(type, modifiers, definitions, endToken) {
7196 this.type = type; 7244 this.type = type;
7197 this.modifiers = modifiers; 7245 this.modifiers = modifiers;
7198 this.definitions = definitions; 7246 this.definitions = definitions;
7199 this.endToken = endToken; 7247 this.endToken = endToken;
7200 // Initializers done 7248 // Initializers done
7249 Statement.call(this);
7201 } 7250 }
7202 $inherits(VariableDefinitions, Statement); 7251 $inherits(VariableDefinitions, Statement);
7203 VariableDefinitions.prototype.is$VariableDefinitions = function(){return this;}; 7252 VariableDefinitions.prototype.is$VariableDefinitions = function(){return this;};
7204 VariableDefinitions.prototype.get$type = function() { return this.type; }; 7253 VariableDefinitions.prototype.get$type = function() { return this.type; };
7205 VariableDefinitions.prototype.accept = function(visitor) { 7254 VariableDefinitions.prototype.accept = function(visitor) {
7206 return visitor.visitVariableDefinitions(this); 7255 return visitor.visitVariableDefinitions(this);
7207 } 7256 }
7208 VariableDefinitions.prototype.getBeginToken = function() { 7257 VariableDefinitions.prototype.getBeginToken = function() {
7209 return firstBeginToken(this.type, this.definitions); 7258 return firstBeginToken(this.type, this.definitions);
7210 } 7259 }
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
7399 Element.prototype.computeType$2 = function($0, $1) { 7448 Element.prototype.computeType$2 = function($0, $1) {
7400 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types())); 7449 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types()));
7401 }; 7450 };
7402 Element.prototype.hashCode$0 = function() { 7451 Element.prototype.hashCode$0 = function() {
7403 return this.hashCode(); 7452 return this.hashCode();
7404 }; 7453 };
7405 // ********** Code for VariableElement ************** 7454 // ********** Code for VariableElement **************
7406 function VariableElement(node, typeAnnotation, name, enclosingElement) { 7455 function VariableElement(node, typeAnnotation, name, enclosingElement) {
7407 this.node = node; 7456 this.node = node;
7408 this.typeAnnotation = typeAnnotation; 7457 this.typeAnnotation = typeAnnotation;
7458 // Initializers done
7409 Element.call(this, name, const$266, enclosingElement); 7459 Element.call(this, name, const$266, enclosingElement);
7410 // Initializers done
7411 } 7460 }
7412 $inherits(VariableElement, Element); 7461 $inherits(VariableElement, Element);
7413 VariableElement.prototype.get$type = function() { return this.type; }; 7462 VariableElement.prototype.get$type = function() { return this.type; };
7414 VariableElement.prototype.set$type = function(value) { return this.type = value; }; 7463 VariableElement.prototype.set$type = function(value) { return this.type = value; };
7415 VariableElement.prototype.parseNode = function(canceler, logger) { 7464 VariableElement.prototype.parseNode = function(canceler, logger) {
7416 return this.node; 7465 return this.node;
7417 } 7466 }
7418 VariableElement.prototype.computeType = function(compiler, types) { 7467 VariableElement.prototype.computeType = function(compiler, types) {
7419 return getType(this.typeAnnotation, types); 7468 return getType(this.typeAnnotation, types);
7420 } 7469 }
7421 VariableElement.prototype.computeType$2 = function($0, $1) { 7470 VariableElement.prototype.computeType$2 = function($0, $1) {
7422 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types())); 7471 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types()));
7423 }; 7472 };
7424 // ********** Code for ForeignElement ************** 7473 // ********** Code for ForeignElement **************
7425 function ForeignElement(name) { 7474 function ForeignElement(name) {
7475 // Initializers done
7426 Element.call(this, name, const$242, null); 7476 Element.call(this, name, const$242, null);
7427 // Initializers done
7428 } 7477 }
7429 $inherits(ForeignElement, Element); 7478 $inherits(ForeignElement, Element);
7430 ForeignElement.prototype.computeType = function(compiler, types) { 7479 ForeignElement.prototype.computeType = function(compiler, types) {
7431 return types.dynamicType; 7480 return types.dynamicType;
7432 } 7481 }
7433 ForeignElement.prototype.computeType$2 = function($0, $1) { 7482 ForeignElement.prototype.computeType$2 = function($0, $1) {
7434 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types())); 7483 return this.computeType(($0 && $0.is$Compiler()), ($1 && $1.is$Types()));
7435 }; 7484 };
7436 // ********** Code for FunctionElement ************** 7485 // ********** Code for FunctionElement **************
7437 function FunctionElement(name) { 7486 function FunctionElement(name) {
7487 // Initializers done
7438 Element.call(this, name, const$239, null); 7488 Element.call(this, name, const$239, null);
7439 // Initializers done
7440 } 7489 }
7441 $inherits(FunctionElement, Element); 7490 $inherits(FunctionElement, Element);
7442 FunctionElement.prototype.get$type = function() { return this.type; }; 7491 FunctionElement.prototype.get$type = function() { return this.type; };
7443 FunctionElement.prototype.set$type = function(value) { return this.type = value; }; 7492 FunctionElement.prototype.set$type = function(value) { return this.type = value; };
7444 FunctionElement.prototype.computeType = function(compiler, types) { 7493 FunctionElement.prototype.computeType = function(compiler, types) {
7445 var $0; 7494 var $0;
7446 if (this.type != null) return (($0 = this.type) && $0.is$FunctionType()); 7495 if (this.type != null) return (($0 = this.type) && $0.is$FunctionType());
7447 var node = (($0 = this.parseNode(compiler, compiler)) && $0.is$FunctionExpress ion()); 7496 var node = (($0 = this.parseNode(compiler, compiler)) && $0.is$FunctionExpress ion());
7448 var returnType = getType(node.returnType, types); 7497 var returnType = getType(node.returnType, types);
7449 if (returnType == null) compiler.cancel(('unknown type ' + returnType + '')); 7498 if (returnType == null) compiler.cancel(('unknown type ' + returnType + ''));
7450 var parameterTypes = new LinkBuilderImplementation(); 7499 var parameterTypes = new LinkBuilderImplementation();
7451 for (var link = node.parameters.nodes; 7500 for (var link = node.parameters.nodes;
7452 !$notnull_bool(link.isEmpty$0()); link = link.get$tail()) { 7501 !$notnull_bool(link.isEmpty$0()); link = link.get$tail()) {
7453 var parameter = (($0 = link.get$head()) && $0.is$VariableDefinitions()); 7502 var parameter = (($0 = link.get$head()) && $0.is$VariableDefinitions());
7454 parameterTypes.addLast(getType(parameter.type, types)); 7503 parameterTypes.addLast(getType(parameter.type, types));
7455 } 7504 }
7456 this.type = new FunctionType(returnType, (($0 = parameterTypes.toLink()) && $0 .is$Link$Type())); 7505 this.type = new FunctionType(returnType, (($0 = parameterTypes.toLink()) && $0 .is$Link$Type()));
7457 return (($0 = this.type) && $0.is$FunctionType()); 7506 return (($0 = this.type) && $0.is$FunctionType());
7458 } 7507 }
7459 FunctionElement.prototype.computeType$2 = FunctionElement.prototype.computeType; 7508 FunctionElement.prototype.computeType$2 = FunctionElement.prototype.computeType;
7460 // ********** Code for ClassElement ************** 7509 // ********** Code for ClassElement **************
7461 function ClassElement(name) { 7510 function ClassElement(name) {
7462 this.interfaces = const$14/*const EmptyLink()*/ 7511 this.interfaces = const$14/*const EmptyLink()*/
7463 this.isResolved = false 7512 this.isResolved = false
7513 // Initializers done
7464 Element.call(this, name, const$237, null); 7514 Element.call(this, name, const$237, null);
7465 // Initializers done
7466 } 7515 }
7467 $inherits(ClassElement, Element); 7516 $inherits(ClassElement, Element);
7468 ClassElement.prototype.is$ClassElement = function(){return this;}; 7517 ClassElement.prototype.is$ClassElement = function(){return this;};
7469 ClassElement.prototype.get$type = function() { return this.type; }; 7518 ClassElement.prototype.get$type = function() { return this.type; };
7470 ClassElement.prototype.set$type = function(value) { return this.type = value; }; 7519 ClassElement.prototype.set$type = function(value) { return this.type = value; };
7471 ClassElement.prototype.get$interfaces = function() { return this.interfaces; }; 7520 ClassElement.prototype.get$interfaces = function() { return this.interfaces; };
7472 ClassElement.prototype.set$interfaces = function(value) { return this.interfaces = value; }; 7521 ClassElement.prototype.set$interfaces = function(value) { return this.interfaces = value; };
7473 ClassElement.prototype.computeType = function(compiler, types) { 7522 ClassElement.prototype.computeType = function(compiler, types) {
7474 if (this.type == null) { 7523 if (this.type == null) {
7475 this.type = new SimpleType(this.name, this); 7524 this.type = new SimpleType(this.name, this);
(...skipping 13 matching lines...) Expand all
7489 function getType(annotation, types) { 7538 function getType(annotation, types) {
7490 var $0; 7539 var $0;
7491 if (annotation == null || annotation.typeName == null) { 7540 if (annotation == null || annotation.typeName == null) {
7492 return (($0 = types.dynamicType) && $0.is$Type()); 7541 return (($0 = types.dynamicType) && $0.is$Type());
7493 } 7542 }
7494 return (($0 = types.lookup$1(annotation.typeName.get$source())) && $0.is$Type( )); 7543 return (($0 = types.lookup$1(annotation.typeName.get$source())) && $0.is$Type( ));
7495 } 7544 }
7496 // ********** Library ssa ************** 7545 // ********** Library ssa **************
7497 // ********** Code for SsaBuilderTask ************** 7546 // ********** Code for SsaBuilderTask **************
7498 function SsaBuilderTask(compiler) { 7547 function SsaBuilderTask(compiler) {
7548 // Initializers done
7499 CompilerTask.call(this, compiler); 7549 CompilerTask.call(this, compiler);
7500 // Initializers done
7501 } 7550 }
7502 $inherits(SsaBuilderTask, CompilerTask); 7551 $inherits(SsaBuilderTask, CompilerTask);
7503 SsaBuilderTask.prototype.get$name = function() { 7552 SsaBuilderTask.prototype.get$name = function() {
7504 return 'SSA builder'; 7553 return 'SSA builder';
7505 } 7554 }
7506 SsaBuilderTask.prototype.build = function(tree, elements) { 7555 SsaBuilderTask.prototype.build = function(tree, elements) {
7507 var $this = this; // closure support 7556 var $this = this; // closure support
7508 var $0; 7557 var $0;
7509 return (($0 = this.measure((function () { 7558 return (($0 = this.measure((function () {
7510 var $0; 7559 var $0;
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
7870 } 7919 }
7871 } 7920 }
7872 SsaBuilder.prototype.add$1 = function($0) { 7921 SsaBuilder.prototype.add$1 = function($0) {
7873 return this.add(($0 && $0.is$HInstruction())); 7922 return this.add(($0 && $0.is$HInstruction()));
7874 }; 7923 };
7875 SsaBuilder.prototype.visit$1 = function($0) { 7924 SsaBuilder.prototype.visit$1 = function($0) {
7876 return this.visit(($0 && $0.is$Node())); 7925 return this.visit(($0 && $0.is$Node()));
7877 }; 7926 };
7878 // ********** Code for SsaCodeGeneratorTask ************** 7927 // ********** Code for SsaCodeGeneratorTask **************
7879 function SsaCodeGeneratorTask(compiler) { 7928 function SsaCodeGeneratorTask(compiler) {
7929 // Initializers done
7880 CompilerTask.call(this, compiler); 7930 CompilerTask.call(this, compiler);
7881 // Initializers done
7882 } 7931 }
7883 $inherits(SsaCodeGeneratorTask, CompilerTask); 7932 $inherits(SsaCodeGeneratorTask, CompilerTask);
7884 SsaCodeGeneratorTask.prototype.get$name = function() { 7933 SsaCodeGeneratorTask.prototype.get$name = function() {
7885 return 'SSA code generator'; 7934 return 'SSA code generator';
7886 } 7935 }
7887 SsaCodeGeneratorTask.prototype.generate = function(tree, graph) { 7936 SsaCodeGeneratorTask.prototype.generate = function(tree, graph) {
7888 var $this = this; // closure support 7937 var $this = this; // closure support
7889 return $assert_String(this.measure((function () { 7938 return $assert_String(this.measure((function () {
7890 var $0; 7939 var $0;
7891 var function_ = (tree && tree.is$FunctionExpression()); 7940 var function_ = (tree && tree.is$FunctionExpression());
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
8224 for (var i = dominated.length - 1; 8273 for (var i = dominated.length - 1;
8225 i >= 0; i--) { 8274 i >= 0; i--) {
8226 visitBasicBlockAndSuccessors((($0 = dominated.$index(i)) && $0.is$HBasicBl ock())); 8275 visitBasicBlockAndSuccessors((($0 = dominated.$index(i)) && $0.is$HBasicBl ock()));
8227 } 8276 }
8228 $this.visitBasicBlock(block); 8277 $this.visitBasicBlock(block);
8229 } 8278 }
8230 visitBasicBlockAndSuccessors(graph.entry); 8279 visitBasicBlockAndSuccessors(graph.entry);
8231 } 8280 }
8232 // ********** Code for HInstructionVisitor ************** 8281 // ********** Code for HInstructionVisitor **************
8233 function HInstructionVisitor() { 8282 function HInstructionVisitor() {
8283 // Initializers done
8234 HGraphVisitor.call(this); 8284 HGraphVisitor.call(this);
8235 // Initializers done
8236 } 8285 }
8237 $inherits(HInstructionVisitor, HGraphVisitor); 8286 $inherits(HInstructionVisitor, HGraphVisitor);
8238 HInstructionVisitor.prototype.visitBasicBlock = function(node) { 8287 HInstructionVisitor.prototype.visitBasicBlock = function(node) {
8239 this.currentBlock = node; 8288 this.currentBlock = node;
8240 var instruction = node.first; 8289 var instruction = node.first;
8241 while (instruction != null) { 8290 while (instruction != null) {
8242 this.visitInstruction(instruction); 8291 this.visitInstruction(instruction);
8243 instruction = instruction.next; 8292 instruction = instruction.next;
8244 } 8293 }
8245 } 8294 }
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
8299 } 8348 }
8300 handleDominatorTree(this.entry, 0); 8349 handleDominatorTree(this.entry, 0);
8301 } 8350 }
8302 HGraph.prototype.isValid = function() { 8351 HGraph.prototype.isValid = function() {
8303 var validator = new HValidator(); 8352 var validator = new HValidator();
8304 validator.visitGraph(this); 8353 validator.visitGraph(this);
8305 return validator.isValid; 8354 return validator.isValid;
8306 } 8355 }
8307 // ********** Code for HBaseVisitor ************** 8356 // ********** Code for HBaseVisitor **************
8308 function HBaseVisitor() { 8357 function HBaseVisitor() {
8358 // Initializers done
8309 HGraphVisitor.call(this); 8359 HGraphVisitor.call(this);
8310 // Initializers done
8311 } 8360 }
8312 $inherits(HBaseVisitor, HGraphVisitor); 8361 $inherits(HBaseVisitor, HGraphVisitor);
8313 HBaseVisitor.prototype.is$HVisitor = function(){return this;}; 8362 HBaseVisitor.prototype.is$HVisitor = function(){return this;};
8314 HBaseVisitor.prototype.visitBasicBlock = function(node) { 8363 HBaseVisitor.prototype.visitBasicBlock = function(node) {
8315 this.currentBlock = node; 8364 this.currentBlock = node;
8316 var instruction = node.first; 8365 var instruction = node.first;
8317 while (instruction != null) { 8366 while (instruction != null) {
8318 instruction.accept(this); 8367 instruction.accept(this);
8319 instruction = instruction.next; 8368 instruction = instruction.next;
8320 } 8369 }
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
8376 HBaseVisitor.prototype.visitSubtract = function(node) { 8425 HBaseVisitor.prototype.visitSubtract = function(node) {
8377 return this.visitArithmetic(node); 8426 return this.visitArithmetic(node);
8378 } 8427 }
8379 HBaseVisitor.prototype.visitThrow = function(node) { 8428 HBaseVisitor.prototype.visitThrow = function(node) {
8380 return this.visitControlFlow(node); 8429 return this.visitControlFlow(node);
8381 } 8430 }
8382 HBaseVisitor.prototype.visitTruncatingDivide = function(node) { 8431 HBaseVisitor.prototype.visitTruncatingDivide = function(node) {
8383 return this.visitArithmetic(node); 8432 return this.visitArithmetic(node);
8384 } 8433 }
8385 // ********** Code for HInstructionList ************** 8434 // ********** Code for HInstructionList **************
8386 function HInstructionList() {} 8435 function HInstructionList() {
8436 this.first = null
8437 this.last = null
8438 // Initializers done
8439 }
8387 HInstructionList.prototype.isEmpty = function() { 8440 HInstructionList.prototype.isEmpty = function() {
8388 return this.first == null; 8441 return this.first == null;
8389 } 8442 }
8390 HInstructionList.prototype.addAfter = function(cursor, instruction) { 8443 HInstructionList.prototype.addAfter = function(cursor, instruction) {
8391 if (cursor == null) { 8444 if (cursor == null) {
8392 $assert(this.isEmpty(), "isEmpty()", "nodes.dart", 185, 14); 8445 $assert(this.isEmpty(), "isEmpty()", "nodes.dart", 185, 14);
8393 this.first = this.last = instruction; 8446 this.first = this.last = instruction;
8394 } 8447 }
8395 else if (cursor === this.last) { 8448 else if (cursor === this.last) {
8396 this.last.next = instruction; 8449 this.last.next = instruction;
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
8438 return this.isEmpty(); 8491 return this.isEmpty();
8439 }; 8492 };
8440 HInstructionList.prototype.last$0 = function() { 8493 HInstructionList.prototype.last$0 = function() {
8441 return this.last(); 8494 return this.last();
8442 }; 8495 };
8443 // ********** Code for HBasicBlock ************** 8496 // ********** Code for HBasicBlock **************
8444 function HBasicBlock() { 8497 function HBasicBlock() {
8445 this.status = 0/*HBasicBlock.STATUS_NEW*/ 8498 this.status = 0/*HBasicBlock.STATUS_NEW*/
8446 this.isLoopHeader = false 8499 this.isLoopHeader = false
8447 this.dominator = null 8500 this.dominator = null
8501 // Initializers done
8448 HBasicBlock.withId$ctor.call(this, null); 8502 HBasicBlock.withId$ctor.call(this, null);
8449 // Initializers done
8450 } 8503 }
8451 HBasicBlock.withId$ctor = function(id) { 8504 HBasicBlock.withId$ctor = function(id) {
8452 this.status = 0/*HBasicBlock.STATUS_NEW*/ 8505 this.status = 0/*HBasicBlock.STATUS_NEW*/
8453 this.isLoopHeader = false 8506 this.isLoopHeader = false
8454 this.dominator = null 8507 this.dominator = null
8455 this.id = id; 8508 this.id = id;
8456 this.predecessors = []; 8509 this.predecessors = [];
8457 this.successors = const$13/*const []*/; 8510 this.successors = const$13/*const []*/;
8458 this.dominatedBlocks = []; 8511 this.dominatedBlocks = [];
8459 // Initializers done 8512 // Initializers done
8513 HInstructionList.call(this);
8460 } 8514 }
8461 HBasicBlock.withId$ctor.prototype = HBasicBlock.prototype; 8515 HBasicBlock.withId$ctor.prototype = HBasicBlock.prototype;
8462 $inherits(HBasicBlock, HInstructionList); 8516 $inherits(HBasicBlock, HInstructionList);
8463 HBasicBlock.prototype.is$HBasicBlock = function(){return this;}; 8517 HBasicBlock.prototype.is$HBasicBlock = function(){return this;};
8464 HBasicBlock.prototype.isNew = function() { 8518 HBasicBlock.prototype.isNew = function() {
8465 return this.status == 0/*HBasicBlock.STATUS_NEW*/; 8519 return this.status == 0/*HBasicBlock.STATUS_NEW*/;
8466 } 8520 }
8467 HBasicBlock.prototype.isOpen = function() { 8521 HBasicBlock.prototype.isOpen = function() {
8468 return this.status == 1/*HBasicBlock.STATUS_OPEN*/; 8522 return this.status == 1/*HBasicBlock.STATUS_OPEN*/;
8469 } 8523 }
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
8701 return this.isLiteralString(); 8755 return this.isLiteralString();
8702 }; 8756 };
8703 HInstruction.prototype.next$0 = function() { 8757 HInstruction.prototype.next$0 = function() {
8704 return this.next(); 8758 return this.next();
8705 }; 8759 };
8706 HInstruction.prototype.setGenerateAtUseSite$0 = function() { 8760 HInstruction.prototype.setGenerateAtUseSite$0 = function() {
8707 return this.setGenerateAtUseSite(); 8761 return this.setGenerateAtUseSite();
8708 }; 8762 };
8709 // ********** Code for HConditionalBranch ************** 8763 // ********** Code for HConditionalBranch **************
8710 function HConditionalBranch(inputs) { 8764 function HConditionalBranch(inputs) {
8765 // Initializers done
8711 HControlFlow.call(this, inputs); 8766 HControlFlow.call(this, inputs);
8712 // Initializers done
8713 } 8767 }
8714 $inherits(HConditionalBranch, HControlFlow); 8768 $inherits(HConditionalBranch, HControlFlow);
8715 HConditionalBranch.prototype.toString$0 = function() { 8769 HConditionalBranch.prototype.toString$0 = function() {
8716 return this.toString(); 8770 return this.toString();
8717 }; 8771 };
8718 // ********** Code for HControlFlow ************** 8772 // ********** Code for HControlFlow **************
8719 function HControlFlow(inputs) { 8773 function HControlFlow(inputs) {
8774 // Initializers done
8720 HInstruction.call(this, inputs); 8775 HInstruction.call(this, inputs);
8721 // Initializers done
8722 } 8776 }
8723 $inherits(HControlFlow, HInstruction); 8777 $inherits(HControlFlow, HInstruction);
8724 HControlFlow.prototype.toString$0 = function() { 8778 HControlFlow.prototype.toString$0 = function() {
8725 return this.toString(); 8779 return this.toString();
8726 }; 8780 };
8727 // ********** Code for HInvoke ************** 8781 // ********** Code for HInvoke **************
8728 function HInvoke(element, inputs) { 8782 function HInvoke(element, inputs) {
8729 this.element = element; 8783 this.element = element;
8784 // Initializers done
8730 HInstruction.call(this, inputs); 8785 HInstruction.call(this, inputs);
8731 // Initializers done
8732 } 8786 }
8733 $inherits(HInvoke, HInstruction); 8787 $inherits(HInvoke, HInstruction);
8734 HInvoke.prototype.get$element = function() { return this.element; }; 8788 HInvoke.prototype.get$element = function() { return this.element; };
8735 HInvoke.prototype.toString = function() { 8789 HInvoke.prototype.toString = function() {
8736 return ('invoke: ' + this.element.name + ''); 8790 return ('invoke: ' + this.element.name + '');
8737 } 8791 }
8738 HInvoke.prototype.accept = function(visitor) { 8792 HInvoke.prototype.accept = function(visitor) {
8739 return visitor.visitInvoke(this); 8793 return visitor.visitInvoke(this);
8740 } 8794 }
8741 HInvoke.prototype.accept$1 = function($0) { 8795 HInvoke.prototype.accept$1 = function($0) {
8742 return this.accept(($0 && $0.is$HVisitor())); 8796 return this.accept(($0 && $0.is$HVisitor()));
8743 }; 8797 };
8744 HInvoke.prototype.toString$0 = function() { 8798 HInvoke.prototype.toString$0 = function() {
8745 return this.toString(); 8799 return this.toString();
8746 }; 8800 };
8747 // ********** Code for HInvokeForeign ************** 8801 // ********** Code for HInvokeForeign **************
8748 function HInvokeForeign(element, inputs, code) { 8802 function HInvokeForeign(element, inputs, code) {
8749 this.code = code; 8803 this.code = code;
8804 // Initializers done
8750 HInvoke.call(this, element, inputs); 8805 HInvoke.call(this, element, inputs);
8751 // Initializers done
8752 } 8806 }
8753 $inherits(HInvokeForeign, HInvoke); 8807 $inherits(HInvokeForeign, HInvoke);
8754 HInvokeForeign.prototype.accept = function(visitor) { 8808 HInvokeForeign.prototype.accept = function(visitor) {
8755 return visitor.visitInvokeForeign(this); 8809 return visitor.visitInvokeForeign(this);
8756 } 8810 }
8757 HInvokeForeign.prototype.accept$1 = function($0) { 8811 HInvokeForeign.prototype.accept$1 = function($0) {
8758 return this.accept(($0 && $0.is$HVisitor())); 8812 return this.accept(($0 && $0.is$HVisitor()));
8759 }; 8813 };
8760 // ********** Code for HArithmetic ************** 8814 // ********** Code for HArithmetic **************
8761 function HArithmetic(element, inputs) { 8815 function HArithmetic(element, inputs) {
8816 // Initializers done
8762 HInvoke.call(this, element, inputs); 8817 HInvoke.call(this, element, inputs);
8763 // Initializers done
8764 } 8818 }
8765 $inherits(HArithmetic, HInvoke); 8819 $inherits(HArithmetic, HInvoke);
8766 HArithmetic.prototype.prepareGvn = function() { 8820 HArithmetic.prototype.prepareGvn = function() {
8767 if (!(this.inputs.$index(0) instanceof HLiteral)) return; 8821 if (!(this.inputs.$index(0) instanceof HLiteral)) return;
8768 this.clearAllSideEffects(); 8822 this.clearAllSideEffects();
8769 this.setUseGvn(); 8823 this.setUseGvn();
8770 } 8824 }
8771 // ********** Code for HAdd ************** 8825 // ********** Code for HAdd **************
8772 function HAdd(element, inputs) { 8826 function HAdd(element, inputs) {
8827 // Initializers done
8773 HArithmetic.call(this, element, inputs); 8828 HArithmetic.call(this, element, inputs);
8774 // Initializers done
8775 } 8829 }
8776 $inherits(HAdd, HArithmetic); 8830 $inherits(HAdd, HArithmetic);
8777 HAdd.prototype.prepareGvn = function() { 8831 HAdd.prototype.prepareGvn = function() {
8778 if (!$notnull_bool(this.inputs.$index(0).isLiteralNumber$0())) return; 8832 if (!$notnull_bool(this.inputs.$index(0).isLiteralNumber$0())) return;
8779 this.clearAllSideEffects(); 8833 this.clearAllSideEffects();
8780 this.setUseGvn(); 8834 this.setUseGvn();
8781 } 8835 }
8782 HAdd.prototype.accept = function(visitor) { 8836 HAdd.prototype.accept = function(visitor) {
8783 return visitor.visitAdd(this); 8837 return visitor.visitAdd(this);
8784 } 8838 }
8785 HAdd.prototype.evaluate = function(a, b) { 8839 HAdd.prototype.evaluate = function(a, b) {
8786 return a + b; 8840 return a + b;
8787 } 8841 }
8788 HAdd.prototype.accept$1 = function($0) { 8842 HAdd.prototype.accept$1 = function($0) {
8789 return this.accept(($0 && $0.is$HVisitor())); 8843 return this.accept(($0 && $0.is$HVisitor()));
8790 }; 8844 };
8791 // ********** Code for HDivide ************** 8845 // ********** Code for HDivide **************
8792 function HDivide(element, inputs) { 8846 function HDivide(element, inputs) {
8847 // Initializers done
8793 HArithmetic.call(this, element, inputs); 8848 HArithmetic.call(this, element, inputs);
8794 // Initializers done
8795 } 8849 }
8796 $inherits(HDivide, HArithmetic); 8850 $inherits(HDivide, HArithmetic);
8797 HDivide.prototype.accept = function(visitor) { 8851 HDivide.prototype.accept = function(visitor) {
8798 return visitor.visitDivide(this); 8852 return visitor.visitDivide(this);
8799 } 8853 }
8800 HDivide.prototype.evaluate = function(a, b) { 8854 HDivide.prototype.evaluate = function(a, b) {
8801 return a / b; 8855 return a / b;
8802 } 8856 }
8803 HDivide.prototype.accept$1 = function($0) { 8857 HDivide.prototype.accept$1 = function($0) {
8804 return this.accept(($0 && $0.is$HVisitor())); 8858 return this.accept(($0 && $0.is$HVisitor()));
8805 }; 8859 };
8806 // ********** Code for HMultiply ************** 8860 // ********** Code for HMultiply **************
8807 function HMultiply(element, inputs) { 8861 function HMultiply(element, inputs) {
8862 // Initializers done
8808 HArithmetic.call(this, element, inputs); 8863 HArithmetic.call(this, element, inputs);
8809 // Initializers done
8810 } 8864 }
8811 $inherits(HMultiply, HArithmetic); 8865 $inherits(HMultiply, HArithmetic);
8812 HMultiply.prototype.accept = function(visitor) { 8866 HMultiply.prototype.accept = function(visitor) {
8813 return visitor.visitMultiply(this); 8867 return visitor.visitMultiply(this);
8814 } 8868 }
8815 HMultiply.prototype.evaluate = function(a, b) { 8869 HMultiply.prototype.evaluate = function(a, b) {
8816 return a * b; 8870 return a * b;
8817 } 8871 }
8818 HMultiply.prototype.accept$1 = function($0) { 8872 HMultiply.prototype.accept$1 = function($0) {
8819 return this.accept(($0 && $0.is$HVisitor())); 8873 return this.accept(($0 && $0.is$HVisitor()));
8820 }; 8874 };
8821 // ********** Code for HSubtract ************** 8875 // ********** Code for HSubtract **************
8822 function HSubtract(element, inputs) { 8876 function HSubtract(element, inputs) {
8877 // Initializers done
8823 HArithmetic.call(this, element, inputs); 8878 HArithmetic.call(this, element, inputs);
8824 // Initializers done
8825 } 8879 }
8826 $inherits(HSubtract, HArithmetic); 8880 $inherits(HSubtract, HArithmetic);
8827 HSubtract.prototype.accept = function(visitor) { 8881 HSubtract.prototype.accept = function(visitor) {
8828 return visitor.visitSubtract(this); 8882 return visitor.visitSubtract(this);
8829 } 8883 }
8830 HSubtract.prototype.evaluate = function(a, b) { 8884 HSubtract.prototype.evaluate = function(a, b) {
8831 return a - b; 8885 return a - b;
8832 } 8886 }
8833 HSubtract.prototype.accept$1 = function($0) { 8887 HSubtract.prototype.accept$1 = function($0) {
8834 return this.accept(($0 && $0.is$HVisitor())); 8888 return this.accept(($0 && $0.is$HVisitor()));
8835 }; 8889 };
8836 // ********** Code for HTruncatingDivide ************** 8890 // ********** Code for HTruncatingDivide **************
8837 function HTruncatingDivide(element, inputs) { 8891 function HTruncatingDivide(element, inputs) {
8892 // Initializers done
8838 HArithmetic.call(this, element, inputs); 8893 HArithmetic.call(this, element, inputs);
8839 // Initializers done
8840 } 8894 }
8841 $inherits(HTruncatingDivide, HArithmetic); 8895 $inherits(HTruncatingDivide, HArithmetic);
8842 HTruncatingDivide.prototype.accept = function(visitor) { 8896 HTruncatingDivide.prototype.accept = function(visitor) {
8843 return visitor.visitTruncatingDivide(this); 8897 return visitor.visitTruncatingDivide(this);
8844 } 8898 }
8845 HTruncatingDivide.prototype.evaluate = function(a, b) { 8899 HTruncatingDivide.prototype.evaluate = function(a, b) {
8846 return $truncdiv(a, b); 8900 return $truncdiv(a, b);
8847 } 8901 }
8848 HTruncatingDivide.prototype.accept$1 = function($0) { 8902 HTruncatingDivide.prototype.accept$1 = function($0) {
8849 return this.accept(($0 && $0.is$HVisitor())); 8903 return this.accept(($0 && $0.is$HVisitor()));
8850 }; 8904 };
8851 // ********** Code for HEquals ************** 8905 // ********** Code for HEquals **************
8852 function HEquals(element, inputs) { 8906 function HEquals(element, inputs) {
8907 // Initializers done
8853 HInvoke.call(this, element, inputs); 8908 HInvoke.call(this, element, inputs);
8854 // Initializers done
8855 } 8909 }
8856 $inherits(HEquals, HInvoke); 8910 $inherits(HEquals, HInvoke);
8857 HEquals.prototype.prepareGvn = function() { 8911 HEquals.prototype.prepareGvn = function() {
8858 if (!(this.inputs.$index(0) instanceof HLiteral)) return; 8912 if (!(this.inputs.$index(0) instanceof HLiteral)) return;
8859 this.clearAllSideEffects(); 8913 this.clearAllSideEffects();
8860 this.setUseGvn(); 8914 this.setUseGvn();
8861 } 8915 }
8862 HEquals.prototype.accept = function(visitor) { 8916 HEquals.prototype.accept = function(visitor) {
8863 return visitor.visitEquals(this); 8917 return visitor.visitEquals(this);
8864 } 8918 }
8865 HEquals.prototype.accept$1 = function($0) { 8919 HEquals.prototype.accept$1 = function($0) {
8866 return this.accept(($0 && $0.is$HVisitor())); 8920 return this.accept(($0 && $0.is$HVisitor()));
8867 }; 8921 };
8868 // ********** Code for HExit ************** 8922 // ********** Code for HExit **************
8869 function HExit() { 8923 function HExit() {
8924 // Initializers done
8870 HControlFlow.call(this, const$13/*const []*/); 8925 HControlFlow.call(this, const$13/*const []*/);
8871 // Initializers done
8872 } 8926 }
8873 $inherits(HExit, HControlFlow); 8927 $inherits(HExit, HControlFlow);
8874 HExit.prototype.toString = function() { 8928 HExit.prototype.toString = function() {
8875 return 'exit'; 8929 return 'exit';
8876 } 8930 }
8877 HExit.prototype.accept = function(visitor) { 8931 HExit.prototype.accept = function(visitor) {
8878 return visitor.visitExit(this); 8932 return visitor.visitExit(this);
8879 } 8933 }
8880 HExit.prototype.accept$1 = function($0) { 8934 HExit.prototype.accept$1 = function($0) {
8881 return this.accept(($0 && $0.is$HVisitor())); 8935 return this.accept(($0 && $0.is$HVisitor()));
8882 }; 8936 };
8883 HExit.prototype.toString$0 = function() { 8937 HExit.prototype.toString$0 = function() {
8884 return this.toString(); 8938 return this.toString();
8885 }; 8939 };
8886 // ********** Code for HGoto ************** 8940 // ********** Code for HGoto **************
8887 function HGoto() { 8941 function HGoto() {
8942 // Initializers done
8888 HControlFlow.call(this, const$13/*const []*/); 8943 HControlFlow.call(this, const$13/*const []*/);
8889 // Initializers done
8890 } 8944 }
8891 $inherits(HGoto, HControlFlow); 8945 $inherits(HGoto, HControlFlow);
8892 HGoto.prototype.toString = function() { 8946 HGoto.prototype.toString = function() {
8893 return 'goto'; 8947 return 'goto';
8894 } 8948 }
8895 HGoto.prototype.accept = function(visitor) { 8949 HGoto.prototype.accept = function(visitor) {
8896 return visitor.visitGoto(this); 8950 return visitor.visitGoto(this);
8897 } 8951 }
8898 HGoto.prototype.accept$1 = function($0) { 8952 HGoto.prototype.accept$1 = function($0) {
8899 return this.accept(($0 && $0.is$HVisitor())); 8953 return this.accept(($0 && $0.is$HVisitor()));
8900 }; 8954 };
8901 HGoto.prototype.toString$0 = function() { 8955 HGoto.prototype.toString$0 = function() {
8902 return this.toString(); 8956 return this.toString();
8903 }; 8957 };
8904 // ********** Code for HIf ************** 8958 // ********** Code for HIf **************
8905 function HIf(condition, hasElse) { 8959 function HIf(condition, hasElse) {
8906 this.hasElse = hasElse; 8960 this.hasElse = hasElse;
8961 // Initializers done
8907 HConditionalBranch.call(this, [condition]); 8962 HConditionalBranch.call(this, [condition]);
8908 // Initializers done
8909 } 8963 }
8910 $inherits(HIf, HConditionalBranch); 8964 $inherits(HIf, HConditionalBranch);
8911 HIf.prototype.toString = function() { 8965 HIf.prototype.toString = function() {
8912 return 'if'; 8966 return 'if';
8913 } 8967 }
8914 HIf.prototype.accept = function(visitor) { 8968 HIf.prototype.accept = function(visitor) {
8915 return visitor.visitIf(this); 8969 return visitor.visitIf(this);
8916 } 8970 }
8917 HIf.prototype.accept$1 = function($0) { 8971 HIf.prototype.accept$1 = function($0) {
8918 return this.accept(($0 && $0.is$HVisitor())); 8972 return this.accept(($0 && $0.is$HVisitor()));
8919 }; 8973 };
8920 HIf.prototype.toString$0 = function() { 8974 HIf.prototype.toString$0 = function() {
8921 return this.toString(); 8975 return this.toString();
8922 }; 8976 };
8923 // ********** Code for HLoopBranch ************** 8977 // ********** Code for HLoopBranch **************
8924 function HLoopBranch(condition) { 8978 function HLoopBranch(condition) {
8979 // Initializers done
8925 HConditionalBranch.call(this, [condition]); 8980 HConditionalBranch.call(this, [condition]);
8926 // Initializers done
8927 } 8981 }
8928 $inherits(HLoopBranch, HConditionalBranch); 8982 $inherits(HLoopBranch, HConditionalBranch);
8929 HLoopBranch.prototype.toString = function() { 8983 HLoopBranch.prototype.toString = function() {
8930 return 'loop-branch'; 8984 return 'loop-branch';
8931 } 8985 }
8932 HLoopBranch.prototype.accept = function(visitor) { 8986 HLoopBranch.prototype.accept = function(visitor) {
8933 return visitor.visitLoopBranch(this); 8987 return visitor.visitLoopBranch(this);
8934 } 8988 }
8935 HLoopBranch.prototype.accept$1 = function($0) { 8989 HLoopBranch.prototype.accept$1 = function($0) {
8936 return this.accept(($0 && $0.is$HVisitor())); 8990 return this.accept(($0 && $0.is$HVisitor()));
8937 }; 8991 };
8938 HLoopBranch.prototype.toString$0 = function() { 8992 HLoopBranch.prototype.toString$0 = function() {
8939 return this.toString(); 8993 return this.toString();
8940 }; 8994 };
8941 // ********** Code for HLiteral ************** 8995 // ********** Code for HLiteral **************
8942 function HLiteral(value) { 8996 function HLiteral(value) {
8943 this.value = value; 8997 this.value = value;
8998 // Initializers done
8944 HInstruction.call(this, []); 8999 HInstruction.call(this, []);
8945 // Initializers done
8946 } 9000 }
8947 $inherits(HLiteral, HInstruction); 9001 $inherits(HLiteral, HInstruction);
8948 HLiteral.prototype.is$HLiteral = function(){return this;}; 9002 HLiteral.prototype.is$HLiteral = function(){return this;};
8949 HLiteral.prototype.get$value = function() { return this.value; }; 9003 HLiteral.prototype.get$value = function() { return this.value; };
8950 HLiteral.prototype.prepareGvn = function() { 9004 HLiteral.prototype.prepareGvn = function() {
8951 this.clearAllSideEffects(); 9005 this.clearAllSideEffects();
8952 this.setUseGvn(); 9006 this.setUseGvn();
8953 } 9007 }
8954 HLiteral.prototype.toString = function() { 9008 HLiteral.prototype.toString = function() {
8955 return ('literal: ' + this.value + ''); 9009 return ('literal: ' + this.value + '');
(...skipping 16 matching lines...) Expand all
8972 }; 9026 };
8973 HLiteral.prototype.isLiteralString$0 = function() { 9027 HLiteral.prototype.isLiteralString$0 = function() {
8974 return this.isLiteralString(); 9028 return this.isLiteralString();
8975 }; 9029 };
8976 HLiteral.prototype.toString$0 = function() { 9030 HLiteral.prototype.toString$0 = function() {
8977 return this.toString(); 9031 return this.toString();
8978 }; 9032 };
8979 // ********** Code for HParameter ************** 9033 // ********** Code for HParameter **************
8980 function HParameter(parameterIndex) { 9034 function HParameter(parameterIndex) {
8981 this.parameterIndex = parameterIndex; 9035 this.parameterIndex = parameterIndex;
9036 // Initializers done
8982 HInstruction.call(this, []); 9037 HInstruction.call(this, []);
8983 // Initializers done
8984 } 9038 }
8985 $inherits(HParameter, HInstruction); 9039 $inherits(HParameter, HInstruction);
8986 HParameter.prototype.prepareGvn = function() { 9040 HParameter.prototype.prepareGvn = function() {
8987 this.clearAllSideEffects(); 9041 this.clearAllSideEffects();
8988 } 9042 }
8989 HParameter.prototype.toString = function() { 9043 HParameter.prototype.toString = function() {
8990 return ('parameter ' + this.parameterIndex + ''); 9044 return ('parameter ' + this.parameterIndex + '');
8991 } 9045 }
8992 HParameter.prototype.accept = function(visitor) { 9046 HParameter.prototype.accept = function(visitor) {
8993 return visitor.visitParameter(this); 9047 return visitor.visitParameter(this);
8994 } 9048 }
8995 HParameter.prototype.accept$1 = function($0) { 9049 HParameter.prototype.accept$1 = function($0) {
8996 return this.accept(($0 && $0.is$HVisitor())); 9050 return this.accept(($0 && $0.is$HVisitor()));
8997 }; 9051 };
8998 HParameter.prototype.toString$0 = function() { 9052 HParameter.prototype.toString$0 = function() {
8999 return this.toString(); 9053 return this.toString();
9000 }; 9054 };
9001 // ********** Code for HPhi ************** 9055 // ********** Code for HPhi **************
9002 function HPhi() {} 9056 function HPhi() {}
9003 HPhi.singleInput$ctor = function(element, input) { 9057 HPhi.singleInput$ctor = function(element, input) {
9004 this.element = element; 9058 this.element = element;
9059 // Initializers done
9005 HInstruction.call(this, [input]); 9060 HInstruction.call(this, [input]);
9006 // Initializers done
9007 } 9061 }
9008 HPhi.singleInput$ctor.prototype = HPhi.prototype; 9062 HPhi.singleInput$ctor.prototype = HPhi.prototype;
9009 HPhi.manyInputs$ctor = function(element, inputs) { 9063 HPhi.manyInputs$ctor = function(element, inputs) {
9010 this.element = element; 9064 this.element = element;
9065 // Initializers done
9011 HInstruction.call(this, inputs); 9066 HInstruction.call(this, inputs);
9012 // Initializers done
9013 } 9067 }
9014 HPhi.manyInputs$ctor.prototype = HPhi.prototype; 9068 HPhi.manyInputs$ctor.prototype = HPhi.prototype;
9015 $inherits(HPhi, HInstruction); 9069 $inherits(HPhi, HInstruction);
9016 HPhi.prototype.is$HPhi = function(){return this;}; 9070 HPhi.prototype.is$HPhi = function(){return this;};
9017 HPhi.prototype.get$element = function() { return this.element; }; 9071 HPhi.prototype.get$element = function() { return this.element; };
9018 HPhi.prototype.addInput = function(input) { 9072 HPhi.prototype.addInput = function(input) {
9019 $assert(this.isInBasicBlock(), "isInBasicBlock()", "nodes.dart", 704, 12); 9073 $assert(this.isInBasicBlock(), "isInBasicBlock()", "nodes.dart", 704, 12);
9020 this.inputs.add(input); 9074 this.inputs.add(input);
9021 input.get$usedBy().add(this); 9075 input.get$usedBy().add(this);
9022 } 9076 }
9023 HPhi.prototype.toString = function() { 9077 HPhi.prototype.toString = function() {
9024 return 'phi'; 9078 return 'phi';
9025 } 9079 }
9026 HPhi.prototype.accept = function(visitor) { 9080 HPhi.prototype.accept = function(visitor) {
9027 return visitor.visitPhi(this); 9081 return visitor.visitPhi(this);
9028 } 9082 }
9029 HPhi.prototype.accept$1 = function($0) { 9083 HPhi.prototype.accept$1 = function($0) {
9030 return this.accept(($0 && $0.is$HVisitor())); 9084 return this.accept(($0 && $0.is$HVisitor()));
9031 }; 9085 };
9032 HPhi.prototype.toString$0 = function() { 9086 HPhi.prototype.toString$0 = function() {
9033 return this.toString(); 9087 return this.toString();
9034 }; 9088 };
9035 // ********** Code for HReturn ************** 9089 // ********** Code for HReturn **************
9036 function HReturn(value) { 9090 function HReturn(value) {
9091 // Initializers done
9037 HControlFlow.call(this, [value]); 9092 HControlFlow.call(this, [value]);
9038 // Initializers done
9039 } 9093 }
9040 $inherits(HReturn, HControlFlow); 9094 $inherits(HReturn, HControlFlow);
9041 HReturn.prototype.toString = function() { 9095 HReturn.prototype.toString = function() {
9042 return 'return'; 9096 return 'return';
9043 } 9097 }
9044 HReturn.prototype.accept = function(visitor) { 9098 HReturn.prototype.accept = function(visitor) {
9045 return visitor.visitReturn(this); 9099 return visitor.visitReturn(this);
9046 } 9100 }
9047 HReturn.prototype.accept$1 = function($0) { 9101 HReturn.prototype.accept$1 = function($0) {
9048 return this.accept(($0 && $0.is$HVisitor())); 9102 return this.accept(($0 && $0.is$HVisitor()));
9049 }; 9103 };
9050 HReturn.prototype.toString$0 = function() { 9104 HReturn.prototype.toString$0 = function() {
9051 return this.toString(); 9105 return this.toString();
9052 }; 9106 };
9053 // ********** Code for HThrow ************** 9107 // ********** Code for HThrow **************
9054 function HThrow(value) { 9108 function HThrow(value) {
9109 // Initializers done
9055 HControlFlow.call(this, [value]); 9110 HControlFlow.call(this, [value]);
9056 // Initializers done
9057 } 9111 }
9058 $inherits(HThrow, HControlFlow); 9112 $inherits(HThrow, HControlFlow);
9059 HThrow.prototype.toString = function() { 9113 HThrow.prototype.toString = function() {
9060 return 'throw'; 9114 return 'throw';
9061 } 9115 }
9062 HThrow.prototype.accept = function(visitor) { 9116 HThrow.prototype.accept = function(visitor) {
9063 return visitor.visitThrow(this); 9117 return visitor.visitThrow(this);
9064 } 9118 }
9065 HThrow.prototype.accept$1 = function($0) { 9119 HThrow.prototype.accept$1 = function($0) {
9066 return this.accept(($0 && $0.is$HVisitor())); 9120 return this.accept(($0 && $0.is$HVisitor()));
9067 }; 9121 };
9068 HThrow.prototype.toString$0 = function() { 9122 HThrow.prototype.toString$0 = function() {
9069 return this.toString(); 9123 return this.toString();
9070 }; 9124 };
9071 // ********** Code for SsaOptimizerTask ************** 9125 // ********** Code for SsaOptimizerTask **************
9072 function SsaOptimizerTask(compiler) { 9126 function SsaOptimizerTask(compiler) {
9127 // Initializers done
9073 CompilerTask.call(this, compiler); 9128 CompilerTask.call(this, compiler);
9074 // Initializers done
9075 } 9129 }
9076 $inherits(SsaOptimizerTask, CompilerTask); 9130 $inherits(SsaOptimizerTask, CompilerTask);
9077 SsaOptimizerTask.prototype.get$name = function() { 9131 SsaOptimizerTask.prototype.get$name = function() {
9078 return 'SSA optimizer'; 9132 return 'SSA optimizer';
9079 } 9133 }
9080 SsaOptimizerTask.prototype.optimize = function(graph) { 9134 SsaOptimizerTask.prototype.optimize = function(graph) {
9081 this.measure((function () { 9135 this.measure((function () {
9082 new SsaConstantFolder().visitGraph(graph); 9136 new SsaConstantFolder().visitGraph(graph);
9083 new SsaDeadCodeEliminator().visitGraph(graph); 9137 new SsaDeadCodeEliminator().visitGraph(graph);
9084 new SsaInstructionMerger().visitGraph(graph); 9138 new SsaInstructionMerger().visitGraph(graph);
9085 }) 9139 })
9086 ); 9140 );
9087 } 9141 }
9088 // ********** Code for SsaConstantFolder ************** 9142 // ********** Code for SsaConstantFolder **************
9089 function SsaConstantFolder() { 9143 function SsaConstantFolder() {
9144 // Initializers done
9090 HBaseVisitor.call(this); 9145 HBaseVisitor.call(this);
9091 // Initializers done
9092 } 9146 }
9093 $inherits(SsaConstantFolder, HBaseVisitor); 9147 $inherits(SsaConstantFolder, HBaseVisitor);
9094 SsaConstantFolder.prototype.visitGraph = function(graph) { 9148 SsaConstantFolder.prototype.visitGraph = function(graph) {
9095 this.visitDominatorTree(graph); 9149 this.visitDominatorTree(graph);
9096 } 9150 }
9097 SsaConstantFolder.prototype.visitBasicBlock = function(block) { 9151 SsaConstantFolder.prototype.visitBasicBlock = function(block) {
9098 var instruction = block.first; 9152 var instruction = block.first;
9099 while (instruction != null) { 9153 while (instruction != null) {
9100 var replacement = instruction.accept(this); 9154 var replacement = instruction.accept(this);
9101 if (replacement !== instruction) { 9155 if (replacement !== instruction) {
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
9141 var $0; 9195 var $0;
9142 if ($notnull_bool(node.inputs.$index(0).isLiteralString$0())) { 9196 if ($notnull_bool(node.inputs.$index(0).isLiteralString$0())) {
9143 var op1 = (($0 = node.inputs.$index(0)) && $0.is$HLiteral()); 9197 var op1 = (($0 = node.inputs.$index(0)) && $0.is$HLiteral());
9144 var op2 = (($0 = node.inputs.$index(1)) && $0.is$HLiteral()); 9198 var op2 = (($0 = node.inputs.$index(1)) && $0.is$HLiteral());
9145 return new HLiteral(new StringWrapper(("" + op1.value + " + " + op2.value + ""))); 9199 return new HLiteral(new StringWrapper(("" + op1.value + " + " + op2.value + "")));
9146 } 9200 }
9147 return this.visitArithmetic(node); 9201 return this.visitArithmetic(node);
9148 } 9202 }
9149 // ********** Code for SsaDeadCodeEliminator ************** 9203 // ********** Code for SsaDeadCodeEliminator **************
9150 function SsaDeadCodeEliminator() { 9204 function SsaDeadCodeEliminator() {
9205 // Initializers done
9151 HGraphVisitor.call(this); 9206 HGraphVisitor.call(this);
9152 // Initializers done
9153 } 9207 }
9154 $inherits(SsaDeadCodeEliminator, HGraphVisitor); 9208 $inherits(SsaDeadCodeEliminator, HGraphVisitor);
9155 SsaDeadCodeEliminator.isDeadCode = function(instruction) { 9209 SsaDeadCodeEliminator.isDeadCode = function(instruction) {
9156 return !$notnull_bool(instruction.hasSideEffects()) && instruction.get$usedBy( ).isEmpty(); 9210 return !$notnull_bool(instruction.hasSideEffects()) && instruction.get$usedBy( ).isEmpty();
9157 } 9211 }
9158 SsaDeadCodeEliminator.prototype.visitGraph = function(graph) { 9212 SsaDeadCodeEliminator.prototype.visitGraph = function(graph) {
9159 this.visitPostDominatorTree(graph); 9213 this.visitPostDominatorTree(graph);
9160 } 9214 }
9161 SsaDeadCodeEliminator.prototype.visitBasicBlock = function(block) { 9215 SsaDeadCodeEliminator.prototype.visitBasicBlock = function(block) {
9162 var instruction = block.last; 9216 var instruction = block.last;
9163 while (instruction != null) { 9217 while (instruction != null) {
9164 var previous = instruction.previous; 9218 var previous = instruction.previous;
9165 if ($notnull_bool(SsaDeadCodeEliminator.isDeadCode(instruction))) block.remo ve(instruction); 9219 if ($notnull_bool(SsaDeadCodeEliminator.isDeadCode(instruction))) block.remo ve(instruction);
9166 instruction = (previous && previous.is$HInstruction()); 9220 instruction = (previous && previous.is$HInstruction());
9167 } 9221 }
9168 } 9222 }
9169 // ********** Code for SsaInstructionMerger ************** 9223 // ********** Code for SsaInstructionMerger **************
9170 function SsaInstructionMerger() { 9224 function SsaInstructionMerger() {
9225 // Initializers done
9171 HInstructionVisitor.call(this); 9226 HInstructionVisitor.call(this);
9172 // Initializers done
9173 } 9227 }
9174 $inherits(SsaInstructionMerger, HInstructionVisitor); 9228 $inherits(SsaInstructionMerger, HInstructionVisitor);
9175 SsaInstructionMerger.prototype.visitGraph = function(graph) { 9229 SsaInstructionMerger.prototype.visitGraph = function(graph) {
9176 this.visitDominatorTree(graph); 9230 this.visitDominatorTree(graph);
9177 } 9231 }
9178 SsaInstructionMerger.prototype.visitInstruction = function(node) { 9232 SsaInstructionMerger.prototype.visitInstruction = function(node) {
9179 var inputs = node.inputs; 9233 var inputs = node.inputs;
9180 var previousUnused = node.previous; 9234 var previousUnused = node.previous;
9181 for (var i = inputs.length - 1; 9235 for (var i = inputs.length - 1;
9182 i >= 0; i--) { 9236 i >= 0; i--) {
9183 if (previousUnused == null) return; 9237 if (previousUnused == null) return;
9184 if ((previousUnused instanceof HPhi)) return; 9238 if ((previousUnused instanceof HPhi)) return;
9185 if (inputs.$index(i).get$usedBy().length != 1) return; 9239 if (inputs.$index(i).get$usedBy().length != 1) return;
9186 if (inputs.$index(i) !== previousUnused) return; 9240 if (inputs.$index(i) !== previousUnused) return;
9187 inputs.$index(i).setGenerateAtUseSite$0(); 9241 inputs.$index(i).setGenerateAtUseSite$0();
9188 previousUnused = previousUnused.previous; 9242 previousUnused = previousUnused.previous;
9189 } 9243 }
9190 } 9244 }
9191 // ********** Code for HTracer ************** 9245 // ********** Code for HTracer **************
9192 function HTracer() {} 9246 function HTracer() {}
9193 HTracer._internal$ctor = function() { 9247 HTracer._internal$ctor = function() {
9194 this.indent = 0 9248 this.indent = 0
9195 this.output = new StringBufferImpl(""); 9249 this.output = new StringBufferImpl("");
9196 // Initializers done 9250 // Initializers done
9251 HGraphVisitor.call(this);
9197 } 9252 }
9198 HTracer._internal$ctor.prototype = HTracer.prototype; 9253 HTracer._internal$ctor.prototype = HTracer.prototype;
9199 $inherits(HTracer, HGraphVisitor); 9254 $inherits(HTracer, HGraphVisitor);
9200 HTracer.HTracer$singleton$factory = function() { 9255 HTracer.HTracer$singleton$factory = function() {
9201 if (HTracer._singleton == null) HTracer._singleton = new HTracer._internal$cto r(); 9256 if (HTracer._singleton == null) HTracer._singleton = new HTracer._internal$cto r();
9202 return HTracer._singleton; 9257 return HTracer._singleton;
9203 } 9258 }
9204 HTracer.prototype.traceCompilation = function(methodName) { 9259 HTracer.prototype.traceCompilation = function(methodName) {
9205 var $this = this; // closure support 9260 var $this = this; // closure support
9206 this.tag("compilation", (function () { 9261 this.tag("compilation", (function () {
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
9419 } 9474 }
9420 HInstructionStringifier.prototype.visitTruncatingDivide = function(node) { 9475 HInstructionStringifier.prototype.visitTruncatingDivide = function(node) {
9421 return this.visitInvoke(node); 9476 return this.visitInvoke(node);
9422 } 9477 }
9423 HInstructionStringifier.prototype.visit$1 = function($0) { 9478 HInstructionStringifier.prototype.visit$1 = function($0) {
9424 return this.visit(($0 && $0.is$HInstruction())); 9479 return this.visit(($0 && $0.is$HInstruction()));
9425 }; 9480 };
9426 // ********** Code for HValidator ************** 9481 // ********** Code for HValidator **************
9427 function HValidator() { 9482 function HValidator() {
9428 this.isValid = true 9483 this.isValid = true
9484 // Initializers done
9429 HInstructionVisitor.call(this); 9485 HInstructionVisitor.call(this);
9430 // Initializers done
9431 } 9486 }
9432 $inherits(HValidator, HInstructionVisitor); 9487 $inherits(HValidator, HInstructionVisitor);
9433 HValidator.prototype.visitGraph = function(graph) { 9488 HValidator.prototype.visitGraph = function(graph) {
9434 this.graph = graph; 9489 this.graph = graph;
9435 this.visitDominatorTree(graph); 9490 this.visitDominatorTree(graph);
9436 } 9491 }
9437 HValidator.prototype.markInvalid = function(reason) { 9492 HValidator.prototype.markInvalid = function(reason) {
9438 print(reason); 9493 print(reason);
9439 this.isValid = false; 9494 this.isValid = false;
9440 } 9495 }
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
9540 }) 9595 })
9541 ); 9596 );
9542 } 9597 }
9543 this.isValid = $notnull_bool(this.isValid) && $notnull_bool(hasCorrectInputs(i nstruction)) && $notnull_bool(hasCorrectUses(instruction)); 9598 this.isValid = $notnull_bool(this.isValid) && $notnull_bool(hasCorrectInputs(i nstruction)) && $notnull_bool(hasCorrectUses(instruction));
9544 } 9599 }
9545 // ********** Code for top level ************** 9600 // ********** Code for top level **************
9546 // ********** Library leg ************** 9601 // ********** Library leg **************
9547 // ********** Code for WorldCompiler ************** 9602 // ********** Code for WorldCompiler **************
9548 function WorldCompiler(world, script) { 9603 function WorldCompiler(world, script) {
9549 this.world = world; 9604 this.world = world;
9605 // Initializers done
9550 Compiler.call(this, script); 9606 Compiler.call(this, script);
9551 // Initializers done
9552 } 9607 }
9553 $inherits(WorldCompiler, Compiler); 9608 $inherits(WorldCompiler, Compiler);
9554 WorldCompiler.prototype.log = function(message) { 9609 WorldCompiler.prototype.log = function(message) {
9555 if ($notnull_bool(options.showInfo)) { 9610 if ($notnull_bool(options.showInfo)) {
9556 this.world.info(('[leg] ' + message + '')); 9611 this.world.info(('[leg] ' + message + ''));
9557 } 9612 }
9558 } 9613 }
9559 WorldCompiler.prototype.run = function() { 9614 WorldCompiler.prototype.run = function() {
9560 var success = Compiler.prototype.run.call(this); 9615 var success = Compiler.prototype.run.call(this);
9561 if ($notnull_bool(success)) { 9616 if ($notnull_bool(success)) {
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
9701 CompilerCancelledException.prototype.toString = function() { 9756 CompilerCancelledException.prototype.toString = function() {
9702 var banner = 'compiler cancelled'; 9757 var banner = 'compiler cancelled';
9703 return (this.reason != null) ? ('' + banner + ': ' + this.reason + '') : ('' + banner + ''); 9758 return (this.reason != null) ? ('' + banner + ': ' + this.reason + '') : ('' + banner + '');
9704 } 9759 }
9705 CompilerCancelledException.prototype.toString$0 = function() { 9760 CompilerCancelledException.prototype.toString$0 = function() {
9706 return this.toString(); 9761 return this.toString();
9707 }; 9762 };
9708 // ********** Code for ResolverTask ************** 9763 // ********** Code for ResolverTask **************
9709 function ResolverTask(compiler) { 9764 function ResolverTask(compiler) {
9710 this.toResolve = new DoubleLinkedQueue(); 9765 this.toResolve = new DoubleLinkedQueue();
9766 // Initializers done
9711 CompilerTask.call(this, compiler); 9767 CompilerTask.call(this, compiler);
9712 // Initializers done
9713 } 9768 }
9714 $inherits(ResolverTask, CompilerTask); 9769 $inherits(ResolverTask, CompilerTask);
9715 ResolverTask.prototype.get$name = function() { 9770 ResolverTask.prototype.get$name = function() {
9716 return 'Resolver'; 9771 return 'Resolver';
9717 } 9772 }
9718 ResolverTask.prototype.resolve = function(tree) { 9773 ResolverTask.prototype.resolve = function(tree) {
9719 var $this = this; // closure support 9774 var $this = this; // closure support
9720 var $0; 9775 var $0;
9721 return (($0 = this.measure((function () { 9776 return (($0 = this.measure((function () {
9722 var visitor = new ResolverVisitor($this.compiler); 9777 var visitor = new ResolverVisitor($this.compiler);
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after
9982 } 10037 }
9983 } 10038 }
9984 VariableDefinitionsVisitor.prototype.visit = function(node) { 10039 VariableDefinitionsVisitor.prototype.visit = function(node) {
9985 return node.accept(this); 10040 return node.accept(this);
9986 } 10041 }
9987 VariableDefinitionsVisitor.prototype.visit$1 = function($0) { 10042 VariableDefinitionsVisitor.prototype.visit$1 = function($0) {
9988 return this.visit(($0 && $0.is$Node())); 10043 return this.visit(($0 && $0.is$Node()));
9989 }; 10044 };
9990 // ********** Code for Scope ************** 10045 // ********** Code for Scope **************
9991 function Scope(parent) { 10046 function Scope(parent) {
10047 // Initializers done
9992 Scope.enclosing$ctor.call(this, parent, parent.enclosingElement); 10048 Scope.enclosing$ctor.call(this, parent, parent.enclosingElement);
9993 // Initializers done
9994 } 10049 }
9995 Scope.top$ctor = function() { 10050 Scope.top$ctor = function() {
9996 this.parent = null; 10051 this.parent = null;
9997 this.elements = const$250/*const {}*/; 10052 this.elements = const$250/*const {}*/;
9998 this.enclosingElement = null; 10053 this.enclosingElement = null;
9999 // Initializers done 10054 // Initializers done
10000 } 10055 }
10001 Scope.top$ctor.prototype = Scope.prototype; 10056 Scope.top$ctor.prototype = Scope.prototype;
10002 Scope.enclosing$ctor = function(parent, enclosingElement) { 10057 Scope.enclosing$ctor = function(parent, enclosingElement) {
10003 this.parent = parent; 10058 this.parent = parent;
(...skipping 17 matching lines...) Expand all
10021 } 10076 }
10022 Scope.prototype.add$1 = function($0) { 10077 Scope.prototype.add$1 = function($0) {
10023 return this.add(($0 && $0.is$Element())); 10078 return this.add(($0 && $0.is$Element()));
10024 }; 10079 };
10025 Scope.prototype.lookup$1 = function($0) { 10080 Scope.prototype.lookup$1 = function($0) {
10026 return this.lookup(($0 && $0.is$SourceString())); 10081 return this.lookup(($0 && $0.is$SourceString()));
10027 }; 10082 };
10028 // ********** Code for TopScope ************** 10083 // ********** Code for TopScope **************
10029 function TopScope(universe) { 10084 function TopScope(universe) {
10030 this.universe = universe; 10085 this.universe = universe;
10086 // Initializers done
10031 Scope.top$ctor.call(this); 10087 Scope.top$ctor.call(this);
10032 // Initializers done
10033 } 10088 }
10034 $inherits(TopScope, Scope); 10089 $inherits(TopScope, Scope);
10035 TopScope.prototype.lookup = function(name) { 10090 TopScope.prototype.lookup = function(name) {
10036 return this.universe.find(name); 10091 return this.universe.find(name);
10037 } 10092 }
10038 TopScope.prototype.add = function(element) { 10093 TopScope.prototype.add = function(element) {
10039 $throw("Cannot add an element in the top scope"); 10094 $throw("Cannot add an element in the top scope");
10040 } 10095 }
10041 TopScope.prototype.add$1 = function($0) { 10096 TopScope.prototype.add$1 = function($0) {
10042 return this.add(($0 && $0.is$Element())); 10097 return this.add(($0 && $0.is$Element()));
10043 }; 10098 };
10044 TopScope.prototype.lookup$1 = function($0) { 10099 TopScope.prototype.lookup$1 = function($0) {
10045 return this.lookup(($0 && $0.is$SourceString())); 10100 return this.lookup(($0 && $0.is$SourceString()));
10046 }; 10101 };
10047 // ********** Code for leg_Script ************** 10102 // ********** Code for leg_Script **************
10048 function leg_Script(file) { 10103 function leg_Script(file) {
10049 this.file = file; 10104 this.file = file;
10050 // Initializers done 10105 // Initializers done
10051 } 10106 }
10052 leg_Script.prototype.get$text = function() { 10107 leg_Script.prototype.get$text = function() {
10053 return this.file.get$text(); 10108 return this.file.get$text();
10054 } 10109 }
10055 // ********** Code for TypeCheckerTask ************** 10110 // ********** Code for TypeCheckerTask **************
10056 function TypeCheckerTask(compiler) { 10111 function TypeCheckerTask(compiler) {
10057 this.types = new Types(); 10112 this.types = new Types();
10113 // Initializers done
10058 CompilerTask.call(this, compiler); 10114 CompilerTask.call(this, compiler);
10059 // Initializers done
10060 } 10115 }
10061 $inherits(TypeCheckerTask, CompilerTask); 10116 $inherits(TypeCheckerTask, CompilerTask);
10062 TypeCheckerTask.prototype.get$name = function() { 10117 TypeCheckerTask.prototype.get$name = function() {
10063 return "Type checker"; 10118 return "Type checker";
10064 } 10119 }
10065 TypeCheckerTask.prototype.check = function(tree, elements) { 10120 TypeCheckerTask.prototype.check = function(tree, elements) {
10066 var $this = this; // closure support 10121 var $this = this; // closure support
10067 this.measure((function () { 10122 this.measure((function () {
10068 var visitor = new TypeCheckerVisitor($this.compiler, elements, $this.types); 10123 var visitor = new TypeCheckerVisitor($this.compiler, elements, $this.types);
10069 try { 10124 try {
(...skipping 1179 matching lines...) Expand 10 before | Expand all | Expand 10 after
11249 } 11304 }
11250 else { 11305 else {
11251 var paramValue = this._scope.declareParameter((p && p.is$Parameter())); 11306 var paramValue = this._scope.declareParameter((p && p.is$Parameter()));
11252 this._paramCode.add(paramValue.code); 11307 this._paramCode.add(paramValue.code);
11253 } 11308 }
11254 } 11309 }
11255 var body = this.method.get$definition().body; 11310 var body = this.method.get$definition().body;
11256 if ($notnull_bool(body == null) && !$notnull_bool(this.method.get$isConstructo r())) { 11311 if ($notnull_bool(body == null) && !$notnull_bool(this.method.get$isConstructo r())) {
11257 world.error(('unexpected empty body for ' + this.method.name + ''), this.met hod.get$definition().get$span()); 11312 world.error(('unexpected empty body for ' + this.method.name + ''), this.met hod.get$definition().get$span());
11258 } 11313 }
11314 var initializerCall = null;
11315 var declaredInitializers = this.method.get$definition().initializers;
11259 if ($notnull_bool($ne(initializers, null))) { 11316 if ($notnull_bool($ne(initializers, null))) {
11260 for (var $i = initializers.iterator$0(); $i.hasNext$0(); ) { 11317 for (var $i = initializers.iterator$0(); $i.hasNext$0(); ) {
11261 var i = $i.next$0(); 11318 var i = $i.next$0();
11262 this.writer.writeln($assert_String(i)); 11319 this.writer.writeln($assert_String(i));
11263 } 11320 }
11264 var declaredInitializers = this.method.get$definition().initializers;
11265 if (declaredInitializers != null) { 11321 if (declaredInitializers != null) {
11266 var initializerCall = null;
11267 for (var $i = 0;$i < declaredInitializers.length; $i++) { 11322 for (var $i = 0;$i < declaredInitializers.length; $i++) {
11268 var init = declaredInitializers.$index($i); 11323 var init = declaredInitializers.$index($i);
11269 if ((init instanceof CallExpression)) { 11324 if ((init instanceof CallExpression)) {
11270 if ($notnull_bool($ne(initializerCall, null))) { 11325 if ($notnull_bool($ne(initializerCall, null))) {
11271 world.error('only one initializer redirecting call is allowed', init .get$span()); 11326 world.error('only one initializer redirecting call is allowed', init .get$span());
11272 } 11327 }
11273 initializerCall = init; 11328 initializerCall = init;
11274 } 11329 }
11275 else if ((init instanceof BinaryExpression) && TokenKind.kindFromAssign( init.op.kind) == 0) { 11330 else if ((init instanceof BinaryExpression) && TokenKind.kindFromAssign( init.op.kind) == 0) {
11276 var left = init.x; 11331 var left = init.x;
(...skipping 10 matching lines...) Expand all
11287 world.error(('"' + left.get$name().get$name() + '" does not refer to a field'), left.get$span()); 11342 world.error(('"' + left.get$name().get$name() + '" does not refer to a field'), left.get$span());
11288 continue; 11343 continue;
11289 } 11344 }
11290 initializedFields.add$1(f.get$name()); 11345 initializedFields.add$1(f.get$name());
11291 this.writer.writeln(('this.' + f.get$jsname() + ' = ' + this.visitValu e(init.y).code + ';')); 11346 this.writer.writeln(('this.' + f.get$jsname() + ' = ' + this.visitValu e(init.y).code + ';'));
11292 } 11347 }
11293 else { 11348 else {
11294 world.error('invalid initializer', init.get$span()); 11349 world.error('invalid initializer', init.get$span());
11295 } 11350 }
11296 } 11351 }
11297 if ($notnull_bool($ne(initializerCall, null))) {
11298 var target = this._writeInitializerCall((initializerCall && initializerC all.is$CallExpression()));
11299 if (!$notnull_bool(target.isSuper)) {
11300 if (initializers.length > 0) {
11301 var $list = this.method.get$parameters();
11302 for (var $i = 0;$i < $list.length; $i++) {
11303 var p = $list.$index($i);
11304 if ($notnull_bool(p.isInitializer)) {
11305 world.error('no initialization allowed on redirecting constructo rs', p.get$definition().get$span());
11306 break;
11307 }
11308 }
11309 }
11310 if (declaredInitializers.length > 1) {
11311 var init = $notnull_bool($eq(declaredInitializers.$index(0), initial izerCall)) ? declaredInitializers.$index(1) : declaredInitializers.$index(0);
11312 world.error('no initialization allowed on redirecting constructors', init.get$span());
11313 }
11314 initializedFields = null;
11315 }
11316 }
11317 else {
11318 }
11319 } 11352 }
11320 this.writer.comment('// Initializers done'); 11353 this.writer.comment('// Initializers done');
11321 } 11354 }
11355 if ($notnull_bool(this.method.get$isConstructor()) && $notnull_bool(initialize rCall == null)) {
11356 var parentType = this.method.declaringType.get$parent();
11357 if ($notnull_bool($ne(parentType, null)) && !$notnull_bool(parentType.get$is Object())) {
11358 initializerCall = new CallExpression(new SuperExpression(this.method.get$s pan()), [], this.method.get$span());
11359 }
11360 }
11361 if ($notnull_bool($ne(initializerCall, null))) {
11362 var target = this._writeInitializerCall((initializerCall && initializerCall. is$CallExpression()));
11363 if (!$notnull_bool(target.isSuper)) {
11364 if (initializers.length > 0) {
11365 var $list = this.method.get$parameters();
11366 for (var $i = 0;$i < $list.length; $i++) {
11367 var p = $list.$index($i);
11368 if ($notnull_bool(p.isInitializer)) {
11369 world.error('no initialization allowed on redirecting constructors', p.get$definition().get$span());
11370 break;
11371 }
11372 }
11373 }
11374 if (declaredInitializers != null && declaredInitializers.length > 1) {
11375 var init = $notnull_bool($eq(declaredInitializers.$index(0), initializer Call)) ? declaredInitializers.$index(1) : declaredInitializers.$index(0);
11376 world.error('no initialization allowed on redirecting constructors', ini t.get$span());
11377 }
11378 initializedFields = null;
11379 }
11380 }
11322 if ($notnull_bool($ne(initializedFields, null))) { 11381 if ($notnull_bool($ne(initializedFields, null))) {
11323 var $list = this.method.declaringType.get$members().getKeys(); 11382 var $list = this.method.declaringType.get$members().getKeys();
11324 for (var $i = this.method.declaringType.get$members().getKeys().iterator$0() ; $i.hasNext$0(); ) { 11383 for (var $i = this.method.declaringType.get$members().getKeys().iterator$0() ; $i.hasNext$0(); ) {
11325 var name = $i.next$0(); 11384 var name = $i.next$0();
11326 var member = this.method.declaringType.get$members().$index(name); 11385 var member = this.method.declaringType.get$members().$index(name);
11327 if ((member instanceof FieldMember) && $notnull_bool(member.isFinal) && !$ notnull_bool(member.get$isStatic()) && !$notnull_bool(initializedFields.contains $1(name))) { 11386 if ((member instanceof FieldMember) && $notnull_bool(member.isFinal) && !$ notnull_bool(member.get$isStatic()) && !$notnull_bool(initializedFields.contains $1(name))) {
11328 world.error(('Field "' + name + '" is final and was not initialized'), t his.method.get$definition().get$span()); 11387 world.error(('Field "' + name + '" is final and was not initialized'), t his.method.get$definition().get$span());
11329 } 11388 }
11330 } 11389 }
11331 } 11390 }
(...skipping 960 matching lines...) Expand 10 before | Expand all | Expand 10 after
12292 } 12351 }
12293 MethodGenerator.prototype.visitSuperExpression = function(node) { 12352 MethodGenerator.prototype.visitSuperExpression = function(node) {
12294 return this._makeSuperValue(node); 12353 return this._makeSuperValue(node);
12295 } 12354 }
12296 MethodGenerator.prototype.visitNullExpression = function(node) { 12355 MethodGenerator.prototype.visitNullExpression = function(node) {
12297 return EvaluatedValue.EvaluatedValue$factory(world.varType, null, 'null', null ); 12356 return EvaluatedValue.EvaluatedValue$factory(world.varType, null, 'null', null );
12298 } 12357 }
12299 MethodGenerator.prototype.visitLiteralExpression = function(node) { 12358 MethodGenerator.prototype.visitLiteralExpression = function(node) {
12300 var $0; 12359 var $0;
12301 var type = node.type.type; 12360 var type = node.type.type;
12302 $assert($ne(type, null), "type != null", "gen.dart", 2099, 12); 12361 $assert($ne(type, null), "type != null", "gen.dart", 2106, 12);
12303 if (!!(($0 = node.value) && $0.is$List)) { 12362 if (!!(($0 = node.value) && $0.is$List)) {
12304 var items = []; 12363 var items = [];
12305 var $list = node.value; 12364 var $list = node.value;
12306 for (var $i = node.value.iterator$0(); $i.hasNext$0(); ) { 12365 for (var $i = node.value.iterator$0(); $i.hasNext$0(); ) {
12307 var item = $i.next$0(); 12366 var item = $i.next$0();
12308 var val = this.visitValue((item && item.is$lang_Expression())); 12367 var val = this.visitValue((item && item.is$lang_Expression()));
12309 val.invoke$4(this, 'toString', item, Arguments.get$EMPTY()); 12368 val.invoke$4(this, 'toString', item, Arguments.get$EMPTY());
12310 var code = val.code; 12369 var code = val.code;
12311 if ((item instanceof BinaryExpression) || (item instanceof ConditionalExpr ession)) { 12370 if ((item instanceof BinaryExpression) || (item instanceof ConditionalExpr ession)) {
12312 code = ('(' + code + ')'); 12371 code = ('(' + code + ')');
(...skipping 757 matching lines...) Expand 10 before | Expand all | Expand 10 after
13070 }; 13129 };
13071 Member.prototype.providePropertySyntax$0 = function() { 13130 Member.prototype.providePropertySyntax$0 = function() {
13072 return this.providePropertySyntax(); 13131 return this.providePropertySyntax();
13073 }; 13132 };
13074 Member.prototype.resolve$1 = function($0) { 13133 Member.prototype.resolve$1 = function($0) {
13075 return this.resolve(($0 && $0.is$lang_Type())); 13134 return this.resolve(($0 && $0.is$lang_Type()));
13076 }; 13135 };
13077 // ********** Code for TypeMember ************** 13136 // ********** Code for TypeMember **************
13078 function TypeMember(type) { 13137 function TypeMember(type) {
13079 this.type = type; 13138 this.type = type;
13139 // Initializers done
13080 Member.call(this, type.name, type.library.topType); 13140 Member.call(this, type.name, type.library.topType);
13081 // Initializers done
13082 } 13141 }
13083 $inherits(TypeMember, Member); 13142 $inherits(TypeMember, Member);
13084 TypeMember.prototype.is$TypeMember = function(){return this;}; 13143 TypeMember.prototype.is$TypeMember = function(){return this;};
13085 TypeMember.prototype.get$type = function() { return this.type; }; 13144 TypeMember.prototype.get$type = function() { return this.type; };
13086 TypeMember.prototype.get$span = function() { 13145 TypeMember.prototype.get$span = function() {
13087 return this.type.definition.span; 13146 return this.type.definition.span;
13088 } 13147 }
13089 TypeMember.prototype.get$isStatic = function() { 13148 TypeMember.prototype.get$isStatic = function() {
13090 return true; 13149 return true;
13091 } 13150 }
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
13136 TypeMember.prototype.resolve$1 = function($0) { 13195 TypeMember.prototype.resolve$1 = function($0) {
13137 return this.resolve(($0 && $0.is$lang_Type())); 13196 return this.resolve(($0 && $0.is$lang_Type()));
13138 }; 13197 };
13139 // ********** Code for FieldMember ************** 13198 // ********** Code for FieldMember **************
13140 function FieldMember(name, declaringType, definition, value) { 13199 function FieldMember(name, declaringType, definition, value) {
13141 this._providePropertySyntax = false 13200 this._providePropertySyntax = false
13142 this._computing = false 13201 this._computing = false
13143 this.definition = definition; 13202 this.definition = definition;
13144 this.value = value; 13203 this.value = value;
13145 this.isNative = false; 13204 this.isNative = false;
13205 // Initializers done
13146 Member.call(this, name, declaringType); 13206 Member.call(this, name, declaringType);
13147 // Initializers done
13148 } 13207 }
13149 $inherits(FieldMember, Member); 13208 $inherits(FieldMember, Member);
13150 FieldMember.prototype.is$FieldMember = function(){return this;}; 13209 FieldMember.prototype.is$FieldMember = function(){return this;};
13151 FieldMember.prototype.get$definition = function() { return this.definition; }; 13210 FieldMember.prototype.get$definition = function() { return this.definition; };
13152 FieldMember.prototype.get$value = function() { return this.value; }; 13211 FieldMember.prototype.get$value = function() { return this.value; };
13153 FieldMember.prototype.get$type = function() { return this.type; }; 13212 FieldMember.prototype.get$type = function() { return this.type; };
13154 FieldMember.prototype.set$type = function(value) { return this.type = value; }; 13213 FieldMember.prototype.set$type = function(value) { return this.type = value; };
13155 FieldMember.prototype.get$isStatic = function() { return this.isStatic; }; 13214 FieldMember.prototype.get$isStatic = function() { return this.isStatic; };
13156 FieldMember.prototype.set$isStatic = function(value) { return this.isStatic = va lue; }; 13215 FieldMember.prototype.set$isStatic = function(value) { return this.isStatic = va lue; };
13157 FieldMember.prototype.get$isNative = function() { return this.isNative; }; 13216 FieldMember.prototype.get$isNative = function() { return this.isNative; };
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
13302 }; 13361 };
13303 FieldMember.prototype.providePropertySyntax$0 = function() { 13362 FieldMember.prototype.providePropertySyntax$0 = function() {
13304 return this.providePropertySyntax(); 13363 return this.providePropertySyntax();
13305 }; 13364 };
13306 FieldMember.prototype.resolve$1 = function($0) { 13365 FieldMember.prototype.resolve$1 = function($0) {
13307 return this.resolve(($0 && $0.is$lang_Type())); 13366 return this.resolve(($0 && $0.is$lang_Type()));
13308 }; 13367 };
13309 // ********** Code for PropertyMember ************** 13368 // ********** Code for PropertyMember **************
13310 function PropertyMember(name, declaringType) { 13369 function PropertyMember(name, declaringType) {
13311 this._provideFieldSyntax = false 13370 this._provideFieldSyntax = false
13371 // Initializers done
13312 Member.call(this, name, declaringType); 13372 Member.call(this, name, declaringType);
13313 // Initializers done
13314 } 13373 }
13315 $inherits(PropertyMember, Member); 13374 $inherits(PropertyMember, Member);
13316 PropertyMember.prototype.is$PropertyMember = function(){return this;}; 13375 PropertyMember.prototype.is$PropertyMember = function(){return this;};
13317 PropertyMember.prototype.get$span = function() { 13376 PropertyMember.prototype.get$span = function() {
13318 var $0; 13377 var $0;
13319 return (($0 = this.getter != null ? this.getter.get$span() : null) && $0.is$So urceSpan()); 13378 return (($0 = this.getter != null ? this.getter.get$span() : null) && $0.is$So urceSpan());
13320 } 13379 }
13321 PropertyMember.prototype.get$canGet = function() { 13380 PropertyMember.prototype.get$canGet = function() {
13322 return this.getter != null; 13381 return this.getter != null;
13323 } 13382 }
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
13404 }; 13463 };
13405 PropertyMember.prototype.providePropertySyntax$0 = function() { 13464 PropertyMember.prototype.providePropertySyntax$0 = function() {
13406 return this.providePropertySyntax(); 13465 return this.providePropertySyntax();
13407 }; 13466 };
13408 PropertyMember.prototype.resolve$1 = function($0) { 13467 PropertyMember.prototype.resolve$1 = function($0) {
13409 return this.resolve(($0 && $0.is$lang_Type())); 13468 return this.resolve(($0 && $0.is$lang_Type()));
13410 }; 13469 };
13411 // ********** Code for ConcreteMember ************** 13470 // ********** Code for ConcreteMember **************
13412 function ConcreteMember(name, declaringType, baseMember) { 13471 function ConcreteMember(name, declaringType, baseMember) {
13413 this.baseMember = baseMember; 13472 this.baseMember = baseMember;
13473 // Initializers done
13414 Member.call(this, name, declaringType); 13474 Member.call(this, name, declaringType);
13415 // Initializers done
13416 this.parameters = []; 13475 this.parameters = [];
13417 this.returnType = this.baseMember.get$returnType().resolveTypeParams(declaring Type); 13476 this.returnType = this.baseMember.get$returnType().resolveTypeParams(declaring Type);
13418 var $list = this.baseMember.get$parameters(); 13477 var $list = this.baseMember.get$parameters();
13419 for (var $i = 0;$i < $list.length; $i++) { 13478 for (var $i = 0;$i < $list.length; $i++) {
13420 var p = $list.$index($i); 13479 var p = $list.$index($i);
13421 var newType = p.type.resolveTypeParams$1(declaringType); 13480 var newType = p.type.resolveTypeParams$1(declaringType);
13422 if ($notnull_bool($ne(newType, p.type))) { 13481 if ($notnull_bool($ne(newType, p.type))) {
13423 this.parameters.add(p.copyWithNewType$1(newType)); 13482 this.parameters.add(p.copyWithNewType$1(newType));
13424 } 13483 }
13425 else { 13484 else {
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
13488 return this.name == this.declaringType.name; 13547 return this.name == this.declaringType.name;
13489 } 13548 }
13490 ConcreteMember.prototype.get$constructorName = function() { 13549 ConcreteMember.prototype.get$constructorName = function() {
13491 return this.baseMember.get$constructorName(); 13550 return this.baseMember.get$constructorName();
13492 } 13551 }
13493 ConcreteMember.prototype.get$definition = function() { 13552 ConcreteMember.prototype.get$definition = function() {
13494 var $0; 13553 var $0;
13495 return (($0 = this.baseMember.get$definition()) && $0.is$Definition()); 13554 return (($0 = this.baseMember.get$definition()) && $0.is$Definition());
13496 } 13555 }
13497 ConcreteMember.prototype.get$initDelegate = function() { 13556 ConcreteMember.prototype.get$initDelegate = function() {
13498 var $0; 13557 return this.baseMember.get$initDelegate();
13499 return (($0 = this.baseMember.get$initDelegate()) && $0.is$Definition());
13500 } 13558 }
13501 ConcreteMember.prototype.set$initDelegate = function(ctor) { 13559 ConcreteMember.prototype.set$initDelegate = function(ctor) {
13502 this.baseMember.set$initDelegate(ctor); 13560 this.baseMember.set$initDelegate(ctor);
13503 } 13561 }
13504 ConcreteMember.prototype.resolveType = function(node, isRequired) { 13562 ConcreteMember.prototype.resolveType = function(node, isRequired) {
13505 var $0; 13563 var $0;
13506 var type = this.baseMember.resolveType(node, isRequired); 13564 var type = this.baseMember.resolveType(node, isRequired);
13507 return (($0 = type.resolveTypeParams$1(this.declaringType)) && $0.is$lang_Type ()); 13565 return (($0 = type.resolveTypeParams$1(this.declaringType)) && $0.is$lang_Type ());
13508 } 13566 }
13509 ConcreteMember.prototype.override = function(other) { 13567 ConcreteMember.prototype.override = function(other) {
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
13556 function MethodMember(name, declaringType, definition) { 13614 function MethodMember(name, declaringType, definition) {
13557 this.isStatic = false 13615 this.isStatic = false
13558 this.isAbstract = false 13616 this.isAbstract = false
13559 this.isConst = false 13617 this.isConst = false
13560 this.isFactory = false 13618 this.isFactory = false
13561 this.isLambda = false 13619 this.isLambda = false
13562 this._providePropertySyntax = false 13620 this._providePropertySyntax = false
13563 this._provideFieldSyntax = false 13621 this._provideFieldSyntax = false
13564 this._provideOptionalParamInfo = false 13622 this._provideOptionalParamInfo = false
13565 this.definition = definition; 13623 this.definition = definition;
13624 // Initializers done
13566 Member.call(this, name, declaringType); 13625 Member.call(this, name, declaringType);
13567 // Initializers done
13568 } 13626 }
13569 $inherits(MethodMember, Member); 13627 $inherits(MethodMember, Member);
13570 MethodMember.prototype.is$MethodMember = function(){return this;}; 13628 MethodMember.prototype.is$MethodMember = function(){return this;};
13571 MethodMember.prototype.get$definition = function() { return this.definition; }; 13629 MethodMember.prototype.get$definition = function() { return this.definition; };
13572 MethodMember.prototype.set$definition = function(value) { return this.definition = value; }; 13630 MethodMember.prototype.set$definition = function(value) { return this.definition = value; };
13573 MethodMember.prototype.get$returnType = function() { return this.returnType; }; 13631 MethodMember.prototype.get$returnType = function() { return this.returnType; };
13574 MethodMember.prototype.set$returnType = function(value) { return this.returnType = value; }; 13632 MethodMember.prototype.set$returnType = function(value) { return this.returnType = value; };
13575 MethodMember.prototype.get$parameters = function() { return this.parameters; }; 13633 MethodMember.prototype.get$parameters = function() { return this.parameters; };
13576 MethodMember.prototype.set$parameters = function(value) { return this.parameters = value; }; 13634 MethodMember.prototype.set$parameters = function(value) { return this.parameters = value; };
13577 MethodMember.prototype.get$isStatic = function() { return this.isStatic; }; 13635 MethodMember.prototype.get$isStatic = function() { return this.isStatic; };
(...skipping 1104 matching lines...) Expand 10 before | Expand all | Expand 10 after
14682 } 14740 }
14683 InterpStack.prototype.next$0 = function() { 14741 InterpStack.prototype.next$0 = function() {
14684 return this.next(); 14742 return this.next();
14685 }; 14743 };
14686 // ********** Code for TokenizerBase ************** 14744 // ********** Code for TokenizerBase **************
14687 function TokenizerBase(_source, _skipWhitespace, _index) { 14745 function TokenizerBase(_source, _skipWhitespace, _index) {
14688 this._source = _source; 14746 this._source = _source;
14689 this._skipWhitespace = _skipWhitespace; 14747 this._skipWhitespace = _skipWhitespace;
14690 this._lang_index = _index; 14748 this._lang_index = _index;
14691 // Initializers done 14749 // Initializers done
14750 TokenizerHelpers.call(this);
14692 this._text = this._source.get$text(); 14751 this._text = this._source.get$text();
14693 } 14752 }
14694 $inherits(TokenizerBase, TokenizerHelpers); 14753 $inherits(TokenizerBase, TokenizerHelpers);
14695 TokenizerBase.prototype._nextChar = function() { 14754 TokenizerBase.prototype._nextChar = function() {
14696 if (this._lang_index < this._text.length) { 14755 if (this._lang_index < this._text.length) {
14697 return this._text.charCodeAt(this._lang_index++); 14756 return this._text.charCodeAt(this._lang_index++);
14698 } 14757 }
14699 else { 14758 else {
14700 return 0; 14759 return 0;
14701 } 14760 }
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
15012 } 15071 }
15013 else { 15072 else {
15014 return this._finishToken(kind); 15073 return this._finishToken(kind);
15015 } 15074 }
15016 } 15075 }
15017 TokenizerBase.prototype.next$0 = function() { 15076 TokenizerBase.prototype.next$0 = function() {
15018 return this.next(); 15077 return this.next();
15019 }; 15078 };
15020 // ********** Code for Tokenizer ************** 15079 // ********** Code for Tokenizer **************
15021 function Tokenizer(source, skipWhitespace, index) { 15080 function Tokenizer(source, skipWhitespace, index) {
15081 // Initializers done
15022 TokenizerBase.call(this, source, skipWhitespace, index); 15082 TokenizerBase.call(this, source, skipWhitespace, index);
15023 // Initializers done
15024 } 15083 }
15025 $inherits(Tokenizer, TokenizerBase); 15084 $inherits(Tokenizer, TokenizerBase);
15026 Tokenizer.prototype.next = function() { 15085 Tokenizer.prototype.next = function() {
15027 this._startIndex = this._lang_index; 15086 this._startIndex = this._lang_index;
15028 if (this._interpStack != null && this._interpStack.depth == 0) { 15087 if (this._interpStack != null && this._interpStack.depth == 0) {
15029 var istack = this._interpStack; 15088 var istack = this._interpStack;
15030 this._interpStack = this._interpStack.pop(); 15089 this._interpStack = this._interpStack.pop();
15031 if ($notnull_bool(istack.isMultiline)) { 15090 if ($notnull_bool(istack.isMultiline)) {
15032 return this.finishMultilineString(istack.quote); 15091 return this.finishMultilineString(istack.quote);
15033 } 15092 }
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after
15541 default: 15600 default:
15542 15601
15543 return 70/*TokenKind.IDENTIFIER*/; 15602 return 70/*TokenKind.IDENTIFIER*/;
15544 15603
15545 } 15604 }
15546 } 15605 }
15547 Tokenizer.prototype.next$0 = function() { 15606 Tokenizer.prototype.next$0 = function() {
15548 return this.next(); 15607 return this.next();
15549 }; 15608 };
15550 // ********** Code for TokenizerHelpers ************** 15609 // ********** Code for TokenizerHelpers **************
15551 function TokenizerHelpers() {} 15610 function TokenizerHelpers() {
15611 // Initializers done
15612 }
15552 TokenizerHelpers.isIdentifierStart = function(c) { 15613 TokenizerHelpers.isIdentifierStart = function(c) {
15553 return ((c >= 97 && c <= 122) || (c >= 65 && c <= 90) || c == 95); 15614 return ((c >= 97 && c <= 122) || (c >= 65 && c <= 90) || c == 95);
15554 } 15615 }
15555 TokenizerHelpers.isDigit = function(c) { 15616 TokenizerHelpers.isDigit = function(c) {
15556 return (c >= 48 && c <= 57); 15617 return (c >= 48 && c <= 57);
15557 } 15618 }
15558 TokenizerHelpers.isHexDigit = function(c) { 15619 TokenizerHelpers.isHexDigit = function(c) {
15559 return ($notnull_bool(TokenizerHelpers.isDigit(c)) || (c >= 97 && c <= 102) || (c >= 65 && c <= 70)); 15620 return ($notnull_bool(TokenizerHelpers.isDigit(c)) || (c >= 97 && c <= 102) || (c >= 65 && c <= 70));
15560 } 15621 }
15561 TokenizerHelpers.isWhitespace = function(c) { 15622 TokenizerHelpers.isWhitespace = function(c) {
(...skipping 2373 matching lines...) Expand 10 before | Expand all | Expand 10 after
17935 // Initializers done 17996 // Initializers done
17936 } 17997 }
17937 lang_Node.prototype.is$lang_Node = function(){return this;}; 17998 lang_Node.prototype.is$lang_Node = function(){return this;};
17938 lang_Node.prototype.get$span = function() { return this.span; }; 17999 lang_Node.prototype.get$span = function() { return this.span; };
17939 lang_Node.prototype.set$span = function(value) { return this.span = value; }; 18000 lang_Node.prototype.set$span = function(value) { return this.span = value; };
17940 lang_Node.prototype.visit$1 = function($0) { 18001 lang_Node.prototype.visit$1 = function($0) {
17941 return this.visit(($0 && $0.is$TreeVisitor())); 18002 return this.visit(($0 && $0.is$TreeVisitor()));
17942 }; 18003 };
17943 // ********** Code for Definition ************** 18004 // ********** Code for Definition **************
17944 function Definition(span) { 18005 function Definition(span) {
18006 // Initializers done
17945 lang_Statement.call(this, span); 18007 lang_Statement.call(this, span);
17946 // Initializers done
17947 } 18008 }
17948 $inherits(Definition, lang_Statement); 18009 $inherits(Definition, lang_Statement);
17949 Definition.prototype.is$Definition = function(){return this;}; 18010 Definition.prototype.is$Definition = function(){return this;};
17950 Definition.prototype.get$typeParameters = function() { 18011 Definition.prototype.get$typeParameters = function() {
17951 return null; 18012 return null;
17952 } 18013 }
17953 Definition.prototype.get$nativeType = function() { 18014 Definition.prototype.get$nativeType = function() {
17954 return null; 18015 return null;
17955 } 18016 }
17956 // ********** Code for lang_Statement ************** 18017 // ********** Code for lang_Statement **************
17957 function lang_Statement(span) { 18018 function lang_Statement(span) {
18019 // Initializers done
17958 lang_Node.call(this, span); 18020 lang_Node.call(this, span);
17959 // Initializers done
17960 } 18021 }
17961 $inherits(lang_Statement, lang_Node); 18022 $inherits(lang_Statement, lang_Node);
17962 lang_Statement.prototype.is$lang_Statement = function(){return this;}; 18023 lang_Statement.prototype.is$lang_Statement = function(){return this;};
17963 // ********** Code for lang_Expression ************** 18024 // ********** Code for lang_Expression **************
17964 function lang_Expression(span) { 18025 function lang_Expression(span) {
18026 // Initializers done
17965 lang_Node.call(this, span); 18027 lang_Node.call(this, span);
17966 // Initializers done
17967 } 18028 }
17968 $inherits(lang_Expression, lang_Node); 18029 $inherits(lang_Expression, lang_Node);
17969 lang_Expression.prototype.is$lang_Expression = function(){return this;}; 18030 lang_Expression.prototype.is$lang_Expression = function(){return this;};
17970 // ********** Code for TypeReference ************** 18031 // ********** Code for TypeReference **************
17971 function TypeReference(span, type) { 18032 function TypeReference(span, type) {
17972 this.type = type; 18033 this.type = type;
18034 // Initializers done
17973 lang_Node.call(this, span); 18035 lang_Node.call(this, span);
17974 // Initializers done
17975 } 18036 }
17976 $inherits(TypeReference, lang_Node); 18037 $inherits(TypeReference, lang_Node);
17977 TypeReference.prototype.is$TypeReference = function(){return this;}; 18038 TypeReference.prototype.is$TypeReference = function(){return this;};
17978 TypeReference.prototype.get$type = function() { return this.type; }; 18039 TypeReference.prototype.get$type = function() { return this.type; };
17979 TypeReference.prototype.set$type = function(value) { return this.type = value; } ; 18040 TypeReference.prototype.set$type = function(value) { return this.type = value; } ;
17980 TypeReference.prototype.visit = function(visitor) { 18041 TypeReference.prototype.visit = function(visitor) {
17981 return visitor.visitTypeReference(this); 18042 return visitor.visitTypeReference(this);
17982 } 18043 }
17983 TypeReference.prototype.visit$1 = function($0) { 18044 TypeReference.prototype.visit$1 = function($0) {
17984 return this.visit(($0 && $0.is$TreeVisitor())); 18045 return this.visit(($0 && $0.is$TreeVisitor()));
17985 }; 18046 };
17986 // ********** Code for DirectiveDefinition ************** 18047 // ********** Code for DirectiveDefinition **************
17987 function DirectiveDefinition(name, arguments, span) { 18048 function DirectiveDefinition(name, arguments, span) {
17988 this.name = name; 18049 this.name = name;
17989 this.arguments = arguments; 18050 this.arguments = arguments;
18051 // Initializers done
17990 Definition.call(this, span); 18052 Definition.call(this, span);
17991 // Initializers done
17992 } 18053 }
17993 $inherits(DirectiveDefinition, Definition); 18054 $inherits(DirectiveDefinition, Definition);
17994 DirectiveDefinition.prototype.get$name = function() { return this.name; }; 18055 DirectiveDefinition.prototype.get$name = function() { return this.name; };
17995 DirectiveDefinition.prototype.set$name = function(value) { return this.name = va lue; }; 18056 DirectiveDefinition.prototype.set$name = function(value) { return this.name = va lue; };
17996 DirectiveDefinition.prototype.get$arguments = function() { return this.arguments ; }; 18057 DirectiveDefinition.prototype.get$arguments = function() { return this.arguments ; };
17997 DirectiveDefinition.prototype.set$arguments = function(value) { return this.argu ments = value; }; 18058 DirectiveDefinition.prototype.set$arguments = function(value) { return this.argu ments = value; };
17998 DirectiveDefinition.prototype.visit = function(visitor) { 18059 DirectiveDefinition.prototype.visit = function(visitor) {
17999 return visitor.visitDirectiveDefinition(this); 18060 return visitor.visitDirectiveDefinition(this);
18000 } 18061 }
18001 DirectiveDefinition.prototype.visit$1 = function($0) { 18062 DirectiveDefinition.prototype.visit$1 = function($0) {
18002 return this.visit(($0 && $0.is$TreeVisitor())); 18063 return this.visit(($0 && $0.is$TreeVisitor()));
18003 }; 18064 };
18004 // ********** Code for TypeDefinition ************** 18065 // ********** Code for TypeDefinition **************
18005 function TypeDefinition(isClass, name, typeParameters, extendsTypes, implementsT ypes, nativeType, factoryType, body, span) { 18066 function TypeDefinition(isClass, name, typeParameters, extendsTypes, implementsT ypes, nativeType, factoryType, body, span) {
18006 this.isClass = isClass; 18067 this.isClass = isClass;
18007 this.name = name; 18068 this.name = name;
18008 this.typeParameters = typeParameters; 18069 this.typeParameters = typeParameters;
18009 this.extendsTypes = extendsTypes; 18070 this.extendsTypes = extendsTypes;
18010 this.implementsTypes = implementsTypes; 18071 this.implementsTypes = implementsTypes;
18011 this.nativeType = nativeType; 18072 this.nativeType = nativeType;
18012 this.factoryType = factoryType; 18073 this.factoryType = factoryType;
18013 this.body = body; 18074 this.body = body;
18075 // Initializers done
18014 Definition.call(this, span); 18076 Definition.call(this, span);
18015 // Initializers done
18016 } 18077 }
18017 $inherits(TypeDefinition, Definition); 18078 $inherits(TypeDefinition, Definition);
18018 TypeDefinition.prototype.is$TypeDefinition = function(){return this;}; 18079 TypeDefinition.prototype.is$TypeDefinition = function(){return this;};
18019 TypeDefinition.prototype.get$isClass = function() { return this.isClass; }; 18080 TypeDefinition.prototype.get$isClass = function() { return this.isClass; };
18020 TypeDefinition.prototype.set$isClass = function(value) { return this.isClass = v alue; }; 18081 TypeDefinition.prototype.set$isClass = function(value) { return this.isClass = v alue; };
18021 TypeDefinition.prototype.get$name = function() { return this.name; }; 18082 TypeDefinition.prototype.get$name = function() { return this.name; };
18022 TypeDefinition.prototype.set$name = function(value) { return this.name = value; }; 18083 TypeDefinition.prototype.set$name = function(value) { return this.name = value; };
18023 TypeDefinition.prototype.get$typeParameters = function() { return this.typeParam eters; }; 18084 TypeDefinition.prototype.get$typeParameters = function() { return this.typeParam eters; };
18024 TypeDefinition.prototype.set$typeParameters = function(value) { return this.type Parameters = value; }; 18085 TypeDefinition.prototype.set$typeParameters = function(value) { return this.type Parameters = value; };
18025 TypeDefinition.prototype.get$nativeType = function() { return this.nativeType; } ; 18086 TypeDefinition.prototype.get$nativeType = function() { return this.nativeType; } ;
18026 TypeDefinition.prototype.set$nativeType = function(value) { return this.nativeTy pe = value; }; 18087 TypeDefinition.prototype.set$nativeType = function(value) { return this.nativeTy pe = value; };
18027 TypeDefinition.prototype.visit = function(visitor) { 18088 TypeDefinition.prototype.visit = function(visitor) {
18028 return visitor.visitTypeDefinition(this); 18089 return visitor.visitTypeDefinition(this);
18029 } 18090 }
18030 TypeDefinition.prototype.visit$1 = function($0) { 18091 TypeDefinition.prototype.visit$1 = function($0) {
18031 return this.visit(($0 && $0.is$TreeVisitor())); 18092 return this.visit(($0 && $0.is$TreeVisitor()));
18032 }; 18093 };
18033 // ********** Code for FunctionTypeDefinition ************** 18094 // ********** Code for FunctionTypeDefinition **************
18034 function FunctionTypeDefinition(func, typeParameters, span) { 18095 function FunctionTypeDefinition(func, typeParameters, span) {
18035 this.func = func; 18096 this.func = func;
18036 this.typeParameters = typeParameters; 18097 this.typeParameters = typeParameters;
18098 // Initializers done
18037 Definition.call(this, span); 18099 Definition.call(this, span);
18038 // Initializers done
18039 } 18100 }
18040 $inherits(FunctionTypeDefinition, Definition); 18101 $inherits(FunctionTypeDefinition, Definition);
18041 FunctionTypeDefinition.prototype.get$typeParameters = function() { return this.t ypeParameters; }; 18102 FunctionTypeDefinition.prototype.get$typeParameters = function() { return this.t ypeParameters; };
18042 FunctionTypeDefinition.prototype.set$typeParameters = function(value) { return t his.typeParameters = value; }; 18103 FunctionTypeDefinition.prototype.set$typeParameters = function(value) { return t his.typeParameters = value; };
18043 FunctionTypeDefinition.prototype.visit = function(visitor) { 18104 FunctionTypeDefinition.prototype.visit = function(visitor) {
18044 return visitor.visitFunctionTypeDefinition(this); 18105 return visitor.visitFunctionTypeDefinition(this);
18045 } 18106 }
18046 FunctionTypeDefinition.prototype.visit$1 = function($0) { 18107 FunctionTypeDefinition.prototype.visit$1 = function($0) {
18047 return this.visit(($0 && $0.is$TreeVisitor())); 18108 return this.visit(($0 && $0.is$TreeVisitor()));
18048 }; 18109 };
18049 // ********** Code for VariableDefinition ************** 18110 // ********** Code for VariableDefinition **************
18050 function VariableDefinition(modifiers, type, names, values, span) { 18111 function VariableDefinition(modifiers, type, names, values, span) {
18051 this.modifiers = modifiers; 18112 this.modifiers = modifiers;
18052 this.type = type; 18113 this.type = type;
18053 this.names = names; 18114 this.names = names;
18054 this.values = values; 18115 this.values = values;
18116 // Initializers done
18055 Definition.call(this, span); 18117 Definition.call(this, span);
18056 // Initializers done
18057 } 18118 }
18058 $inherits(VariableDefinition, Definition); 18119 $inherits(VariableDefinition, Definition);
18059 VariableDefinition.prototype.get$type = function() { return this.type; }; 18120 VariableDefinition.prototype.get$type = function() { return this.type; };
18060 VariableDefinition.prototype.set$type = function(value) { return this.type = val ue; }; 18121 VariableDefinition.prototype.set$type = function(value) { return this.type = val ue; };
18061 VariableDefinition.prototype.visit = function(visitor) { 18122 VariableDefinition.prototype.visit = function(visitor) {
18062 return visitor.visitVariableDefinition(this); 18123 return visitor.visitVariableDefinition(this);
18063 } 18124 }
18064 VariableDefinition.prototype.visit$1 = function($0) { 18125 VariableDefinition.prototype.visit$1 = function($0) {
18065 return this.visit(($0 && $0.is$TreeVisitor())); 18126 return this.visit(($0 && $0.is$TreeVisitor()));
18066 }; 18127 };
18067 // ********** Code for FunctionDefinition ************** 18128 // ********** Code for FunctionDefinition **************
18068 function FunctionDefinition(modifiers, returnType, name, formals, initializers, body, span) { 18129 function FunctionDefinition(modifiers, returnType, name, formals, initializers, body, span) {
18069 this.modifiers = modifiers; 18130 this.modifiers = modifiers;
18070 this.returnType = returnType; 18131 this.returnType = returnType;
18071 this.name = name; 18132 this.name = name;
18072 this.formals = formals; 18133 this.formals = formals;
18073 this.initializers = initializers; 18134 this.initializers = initializers;
18074 this.body = body; 18135 this.body = body;
18136 // Initializers done
18075 Definition.call(this, span); 18137 Definition.call(this, span);
18076 // Initializers done
18077 } 18138 }
18078 $inherits(FunctionDefinition, Definition); 18139 $inherits(FunctionDefinition, Definition);
18079 FunctionDefinition.prototype.is$FunctionDefinition = function(){return this;}; 18140 FunctionDefinition.prototype.is$FunctionDefinition = function(){return this;};
18080 FunctionDefinition.prototype.get$returnType = function() { return this.returnTyp e; }; 18141 FunctionDefinition.prototype.get$returnType = function() { return this.returnTyp e; };
18081 FunctionDefinition.prototype.set$returnType = function(value) { return this.retu rnType = value; }; 18142 FunctionDefinition.prototype.set$returnType = function(value) { return this.retu rnType = value; };
18082 FunctionDefinition.prototype.get$name = function() { return this.name; }; 18143 FunctionDefinition.prototype.get$name = function() { return this.name; };
18083 FunctionDefinition.prototype.set$name = function(value) { return this.name = val ue; }; 18144 FunctionDefinition.prototype.set$name = function(value) { return this.name = val ue; };
18084 FunctionDefinition.prototype.visit = function(visitor) { 18145 FunctionDefinition.prototype.visit = function(visitor) {
18085 return visitor.visitFunctionDefinition(this); 18146 return visitor.visitFunctionDefinition(this);
18086 } 18147 }
18087 FunctionDefinition.prototype.visit$1 = function($0) { 18148 FunctionDefinition.prototype.visit$1 = function($0) {
18088 return this.visit(($0 && $0.is$TreeVisitor())); 18149 return this.visit(($0 && $0.is$TreeVisitor()));
18089 }; 18150 };
18090 // ********** Code for ReturnStatement ************** 18151 // ********** Code for ReturnStatement **************
18091 function ReturnStatement(value, span) { 18152 function ReturnStatement(value, span) {
18092 this.value = value; 18153 this.value = value;
18154 // Initializers done
18093 lang_Statement.call(this, span); 18155 lang_Statement.call(this, span);
18094 // Initializers done
18095 } 18156 }
18096 $inherits(ReturnStatement, lang_Statement); 18157 $inherits(ReturnStatement, lang_Statement);
18097 ReturnStatement.prototype.get$value = function() { return this.value; }; 18158 ReturnStatement.prototype.get$value = function() { return this.value; };
18098 ReturnStatement.prototype.set$value = function(value) { return this.value = valu e; }; 18159 ReturnStatement.prototype.set$value = function(value) { return this.value = valu e; };
18099 ReturnStatement.prototype.visit = function(visitor) { 18160 ReturnStatement.prototype.visit = function(visitor) {
18100 return visitor.visitReturnStatement(this); 18161 return visitor.visitReturnStatement(this);
18101 } 18162 }
18102 ReturnStatement.prototype.visit$1 = function($0) { 18163 ReturnStatement.prototype.visit$1 = function($0) {
18103 return this.visit(($0 && $0.is$TreeVisitor())); 18164 return this.visit(($0 && $0.is$TreeVisitor()));
18104 }; 18165 };
18105 // ********** Code for ThrowStatement ************** 18166 // ********** Code for ThrowStatement **************
18106 function ThrowStatement(value, span) { 18167 function ThrowStatement(value, span) {
18107 this.value = value; 18168 this.value = value;
18169 // Initializers done
18108 lang_Statement.call(this, span); 18170 lang_Statement.call(this, span);
18109 // Initializers done
18110 } 18171 }
18111 $inherits(ThrowStatement, lang_Statement); 18172 $inherits(ThrowStatement, lang_Statement);
18112 ThrowStatement.prototype.get$value = function() { return this.value; }; 18173 ThrowStatement.prototype.get$value = function() { return this.value; };
18113 ThrowStatement.prototype.set$value = function(value) { return this.value = value ; }; 18174 ThrowStatement.prototype.set$value = function(value) { return this.value = value ; };
18114 ThrowStatement.prototype.visit = function(visitor) { 18175 ThrowStatement.prototype.visit = function(visitor) {
18115 return visitor.visitThrowStatement(this); 18176 return visitor.visitThrowStatement(this);
18116 } 18177 }
18117 ThrowStatement.prototype.visit$1 = function($0) { 18178 ThrowStatement.prototype.visit$1 = function($0) {
18118 return this.visit(($0 && $0.is$TreeVisitor())); 18179 return this.visit(($0 && $0.is$TreeVisitor()));
18119 }; 18180 };
18120 // ********** Code for AssertStatement ************** 18181 // ********** Code for AssertStatement **************
18121 function AssertStatement(test, span) { 18182 function AssertStatement(test, span) {
18122 this.test = test; 18183 this.test = test;
18184 // Initializers done
18123 lang_Statement.call(this, span); 18185 lang_Statement.call(this, span);
18124 // Initializers done
18125 } 18186 }
18126 $inherits(AssertStatement, lang_Statement); 18187 $inherits(AssertStatement, lang_Statement);
18127 AssertStatement.prototype.visit = function(visitor) { 18188 AssertStatement.prototype.visit = function(visitor) {
18128 return visitor.visitAssertStatement(this); 18189 return visitor.visitAssertStatement(this);
18129 } 18190 }
18130 AssertStatement.prototype.visit$1 = function($0) { 18191 AssertStatement.prototype.visit$1 = function($0) {
18131 return this.visit(($0 && $0.is$TreeVisitor())); 18192 return this.visit(($0 && $0.is$TreeVisitor()));
18132 }; 18193 };
18133 // ********** Code for BreakStatement ************** 18194 // ********** Code for BreakStatement **************
18134 function BreakStatement(label, span) { 18195 function BreakStatement(label, span) {
18135 this.label = label; 18196 this.label = label;
18197 // Initializers done
18136 lang_Statement.call(this, span); 18198 lang_Statement.call(this, span);
18137 // Initializers done
18138 } 18199 }
18139 $inherits(BreakStatement, lang_Statement); 18200 $inherits(BreakStatement, lang_Statement);
18140 BreakStatement.prototype.visit = function(visitor) { 18201 BreakStatement.prototype.visit = function(visitor) {
18141 return visitor.visitBreakStatement(this); 18202 return visitor.visitBreakStatement(this);
18142 } 18203 }
18143 BreakStatement.prototype.visit$1 = function($0) { 18204 BreakStatement.prototype.visit$1 = function($0) {
18144 return this.visit(($0 && $0.is$TreeVisitor())); 18205 return this.visit(($0 && $0.is$TreeVisitor()));
18145 }; 18206 };
18146 // ********** Code for ContinueStatement ************** 18207 // ********** Code for ContinueStatement **************
18147 function ContinueStatement(label, span) { 18208 function ContinueStatement(label, span) {
18148 this.label = label; 18209 this.label = label;
18210 // Initializers done
18149 lang_Statement.call(this, span); 18211 lang_Statement.call(this, span);
18150 // Initializers done
18151 } 18212 }
18152 $inherits(ContinueStatement, lang_Statement); 18213 $inherits(ContinueStatement, lang_Statement);
18153 ContinueStatement.prototype.visit = function(visitor) { 18214 ContinueStatement.prototype.visit = function(visitor) {
18154 return visitor.visitContinueStatement(this); 18215 return visitor.visitContinueStatement(this);
18155 } 18216 }
18156 ContinueStatement.prototype.visit$1 = function($0) { 18217 ContinueStatement.prototype.visit$1 = function($0) {
18157 return this.visit(($0 && $0.is$TreeVisitor())); 18218 return this.visit(($0 && $0.is$TreeVisitor()));
18158 }; 18219 };
18159 // ********** Code for IfStatement ************** 18220 // ********** Code for IfStatement **************
18160 function IfStatement(test, trueBranch, falseBranch, span) { 18221 function IfStatement(test, trueBranch, falseBranch, span) {
18161 this.test = test; 18222 this.test = test;
18162 this.trueBranch = trueBranch; 18223 this.trueBranch = trueBranch;
18163 this.falseBranch = falseBranch; 18224 this.falseBranch = falseBranch;
18225 // Initializers done
18164 lang_Statement.call(this, span); 18226 lang_Statement.call(this, span);
18165 // Initializers done
18166 } 18227 }
18167 $inherits(IfStatement, lang_Statement); 18228 $inherits(IfStatement, lang_Statement);
18168 IfStatement.prototype.visit = function(visitor) { 18229 IfStatement.prototype.visit = function(visitor) {
18169 return visitor.visitIfStatement(this); 18230 return visitor.visitIfStatement(this);
18170 } 18231 }
18171 IfStatement.prototype.visit$1 = function($0) { 18232 IfStatement.prototype.visit$1 = function($0) {
18172 return this.visit(($0 && $0.is$TreeVisitor())); 18233 return this.visit(($0 && $0.is$TreeVisitor()));
18173 }; 18234 };
18174 // ********** Code for WhileStatement ************** 18235 // ********** Code for WhileStatement **************
18175 function WhileStatement(test, body, span) { 18236 function WhileStatement(test, body, span) {
18176 this.test = test; 18237 this.test = test;
18177 this.body = body; 18238 this.body = body;
18239 // Initializers done
18178 lang_Statement.call(this, span); 18240 lang_Statement.call(this, span);
18179 // Initializers done
18180 } 18241 }
18181 $inherits(WhileStatement, lang_Statement); 18242 $inherits(WhileStatement, lang_Statement);
18182 WhileStatement.prototype.visit = function(visitor) { 18243 WhileStatement.prototype.visit = function(visitor) {
18183 return visitor.visitWhileStatement(this); 18244 return visitor.visitWhileStatement(this);
18184 } 18245 }
18185 WhileStatement.prototype.visit$1 = function($0) { 18246 WhileStatement.prototype.visit$1 = function($0) {
18186 return this.visit(($0 && $0.is$TreeVisitor())); 18247 return this.visit(($0 && $0.is$TreeVisitor()));
18187 }; 18248 };
18188 // ********** Code for DoStatement ************** 18249 // ********** Code for DoStatement **************
18189 function DoStatement(body, test, span) { 18250 function DoStatement(body, test, span) {
18190 this.body = body; 18251 this.body = body;
18191 this.test = test; 18252 this.test = test;
18253 // Initializers done
18192 lang_Statement.call(this, span); 18254 lang_Statement.call(this, span);
18193 // Initializers done
18194 } 18255 }
18195 $inherits(DoStatement, lang_Statement); 18256 $inherits(DoStatement, lang_Statement);
18196 DoStatement.prototype.visit = function(visitor) { 18257 DoStatement.prototype.visit = function(visitor) {
18197 return visitor.visitDoStatement(this); 18258 return visitor.visitDoStatement(this);
18198 } 18259 }
18199 DoStatement.prototype.visit$1 = function($0) { 18260 DoStatement.prototype.visit$1 = function($0) {
18200 return this.visit(($0 && $0.is$TreeVisitor())); 18261 return this.visit(($0 && $0.is$TreeVisitor()));
18201 }; 18262 };
18202 // ********** Code for ForStatement ************** 18263 // ********** Code for ForStatement **************
18203 function ForStatement(init, test, step, body, span) { 18264 function ForStatement(init, test, step, body, span) {
18204 this.init = init; 18265 this.init = init;
18205 this.test = test; 18266 this.test = test;
18206 this.step = step; 18267 this.step = step;
18207 this.body = body; 18268 this.body = body;
18269 // Initializers done
18208 lang_Statement.call(this, span); 18270 lang_Statement.call(this, span);
18209 // Initializers done
18210 } 18271 }
18211 $inherits(ForStatement, lang_Statement); 18272 $inherits(ForStatement, lang_Statement);
18212 ForStatement.prototype.visit = function(visitor) { 18273 ForStatement.prototype.visit = function(visitor) {
18213 return visitor.visitForStatement(this); 18274 return visitor.visitForStatement(this);
18214 } 18275 }
18215 ForStatement.prototype.visit$1 = function($0) { 18276 ForStatement.prototype.visit$1 = function($0) {
18216 return this.visit(($0 && $0.is$TreeVisitor())); 18277 return this.visit(($0 && $0.is$TreeVisitor()));
18217 }; 18278 };
18218 // ********** Code for ForInStatement ************** 18279 // ********** Code for ForInStatement **************
18219 function ForInStatement(item, list, body, span) { 18280 function ForInStatement(item, list, body, span) {
18220 this.item = item; 18281 this.item = item;
18221 this.list = list; 18282 this.list = list;
18222 this.body = body; 18283 this.body = body;
18284 // Initializers done
18223 lang_Statement.call(this, span); 18285 lang_Statement.call(this, span);
18224 // Initializers done
18225 } 18286 }
18226 $inherits(ForInStatement, lang_Statement); 18287 $inherits(ForInStatement, lang_Statement);
18227 ForInStatement.prototype.visit = function(visitor) { 18288 ForInStatement.prototype.visit = function(visitor) {
18228 return visitor.visitForInStatement(this); 18289 return visitor.visitForInStatement(this);
18229 } 18290 }
18230 ForInStatement.prototype.visit$1 = function($0) { 18291 ForInStatement.prototype.visit$1 = function($0) {
18231 return this.visit(($0 && $0.is$TreeVisitor())); 18292 return this.visit(($0 && $0.is$TreeVisitor()));
18232 }; 18293 };
18233 // ********** Code for TryStatement ************** 18294 // ********** Code for TryStatement **************
18234 function TryStatement(body, catches, finallyBlock, span) { 18295 function TryStatement(body, catches, finallyBlock, span) {
18235 this.body = body; 18296 this.body = body;
18236 this.catches = catches; 18297 this.catches = catches;
18237 this.finallyBlock = finallyBlock; 18298 this.finallyBlock = finallyBlock;
18299 // Initializers done
18238 lang_Statement.call(this, span); 18300 lang_Statement.call(this, span);
18239 // Initializers done
18240 } 18301 }
18241 $inherits(TryStatement, lang_Statement); 18302 $inherits(TryStatement, lang_Statement);
18242 TryStatement.prototype.visit = function(visitor) { 18303 TryStatement.prototype.visit = function(visitor) {
18243 return visitor.visitTryStatement(this); 18304 return visitor.visitTryStatement(this);
18244 } 18305 }
18245 TryStatement.prototype.visit$1 = function($0) { 18306 TryStatement.prototype.visit$1 = function($0) {
18246 return this.visit(($0 && $0.is$TreeVisitor())); 18307 return this.visit(($0 && $0.is$TreeVisitor()));
18247 }; 18308 };
18248 // ********** Code for SwitchStatement ************** 18309 // ********** Code for SwitchStatement **************
18249 function SwitchStatement(test, cases, span) { 18310 function SwitchStatement(test, cases, span) {
18250 this.test = test; 18311 this.test = test;
18251 this.cases = cases; 18312 this.cases = cases;
18313 // Initializers done
18252 lang_Statement.call(this, span); 18314 lang_Statement.call(this, span);
18253 // Initializers done
18254 } 18315 }
18255 $inherits(SwitchStatement, lang_Statement); 18316 $inherits(SwitchStatement, lang_Statement);
18256 SwitchStatement.prototype.visit = function(visitor) { 18317 SwitchStatement.prototype.visit = function(visitor) {
18257 return visitor.visitSwitchStatement(this); 18318 return visitor.visitSwitchStatement(this);
18258 } 18319 }
18259 SwitchStatement.prototype.visit$1 = function($0) { 18320 SwitchStatement.prototype.visit$1 = function($0) {
18260 return this.visit(($0 && $0.is$TreeVisitor())); 18321 return this.visit(($0 && $0.is$TreeVisitor()));
18261 }; 18322 };
18262 // ********** Code for BlockStatement ************** 18323 // ********** Code for BlockStatement **************
18263 function BlockStatement(body, span) { 18324 function BlockStatement(body, span) {
18264 this.body = body; 18325 this.body = body;
18326 // Initializers done
18265 lang_Statement.call(this, span); 18327 lang_Statement.call(this, span);
18266 // Initializers done
18267 } 18328 }
18268 $inherits(BlockStatement, lang_Statement); 18329 $inherits(BlockStatement, lang_Statement);
18269 BlockStatement.prototype.is$BlockStatement = function(){return this;}; 18330 BlockStatement.prototype.is$BlockStatement = function(){return this;};
18270 BlockStatement.prototype.visit = function(visitor) { 18331 BlockStatement.prototype.visit = function(visitor) {
18271 return visitor.visitBlockStatement(this); 18332 return visitor.visitBlockStatement(this);
18272 } 18333 }
18273 BlockStatement.prototype.visit$1 = function($0) { 18334 BlockStatement.prototype.visit$1 = function($0) {
18274 return this.visit(($0 && $0.is$TreeVisitor())); 18335 return this.visit(($0 && $0.is$TreeVisitor()));
18275 }; 18336 };
18276 // ********** Code for LabeledStatement ************** 18337 // ********** Code for LabeledStatement **************
18277 function LabeledStatement(name, body, span) { 18338 function LabeledStatement(name, body, span) {
18278 this.name = name; 18339 this.name = name;
18279 this.body = body; 18340 this.body = body;
18341 // Initializers done
18280 lang_Statement.call(this, span); 18342 lang_Statement.call(this, span);
18281 // Initializers done
18282 } 18343 }
18283 $inherits(LabeledStatement, lang_Statement); 18344 $inherits(LabeledStatement, lang_Statement);
18284 LabeledStatement.prototype.get$name = function() { return this.name; }; 18345 LabeledStatement.prototype.get$name = function() { return this.name; };
18285 LabeledStatement.prototype.set$name = function(value) { return this.name = value ; }; 18346 LabeledStatement.prototype.set$name = function(value) { return this.name = value ; };
18286 LabeledStatement.prototype.visit = function(visitor) { 18347 LabeledStatement.prototype.visit = function(visitor) {
18287 return visitor.visitLabeledStatement(this); 18348 return visitor.visitLabeledStatement(this);
18288 } 18349 }
18289 LabeledStatement.prototype.visit$1 = function($0) { 18350 LabeledStatement.prototype.visit$1 = function($0) {
18290 return this.visit(($0 && $0.is$TreeVisitor())); 18351 return this.visit(($0 && $0.is$TreeVisitor()));
18291 }; 18352 };
18292 // ********** Code for lang_ExpressionStatement ************** 18353 // ********** Code for lang_ExpressionStatement **************
18293 function lang_ExpressionStatement(body, span) { 18354 function lang_ExpressionStatement(body, span) {
18294 this.body = body; 18355 this.body = body;
18356 // Initializers done
18295 lang_Statement.call(this, span); 18357 lang_Statement.call(this, span);
18296 // Initializers done
18297 } 18358 }
18298 $inherits(lang_ExpressionStatement, lang_Statement); 18359 $inherits(lang_ExpressionStatement, lang_Statement);
18299 lang_ExpressionStatement.prototype.visit = function(visitor) { 18360 lang_ExpressionStatement.prototype.visit = function(visitor) {
18300 return visitor.visitExpressionStatement(this); 18361 return visitor.visitExpressionStatement(this);
18301 } 18362 }
18302 lang_ExpressionStatement.prototype.visit$1 = function($0) { 18363 lang_ExpressionStatement.prototype.visit$1 = function($0) {
18303 return this.visit(($0 && $0.is$TreeVisitor())); 18364 return this.visit(($0 && $0.is$TreeVisitor()));
18304 }; 18365 };
18305 // ********** Code for EmptyStatement ************** 18366 // ********** Code for EmptyStatement **************
18306 function EmptyStatement(span) { 18367 function EmptyStatement(span) {
18368 // Initializers done
18307 lang_Statement.call(this, span); 18369 lang_Statement.call(this, span);
18308 // Initializers done
18309 } 18370 }
18310 $inherits(EmptyStatement, lang_Statement); 18371 $inherits(EmptyStatement, lang_Statement);
18311 EmptyStatement.prototype.visit = function(visitor) { 18372 EmptyStatement.prototype.visit = function(visitor) {
18312 return visitor.visitEmptyStatement(this); 18373 return visitor.visitEmptyStatement(this);
18313 } 18374 }
18314 EmptyStatement.prototype.visit$1 = function($0) { 18375 EmptyStatement.prototype.visit$1 = function($0) {
18315 return this.visit(($0 && $0.is$TreeVisitor())); 18376 return this.visit(($0 && $0.is$TreeVisitor()));
18316 }; 18377 };
18317 // ********** Code for DietStatement ************** 18378 // ********** Code for DietStatement **************
18318 function DietStatement(span) { 18379 function DietStatement(span) {
18380 // Initializers done
18319 lang_Statement.call(this, span); 18381 lang_Statement.call(this, span);
18320 // Initializers done
18321 } 18382 }
18322 $inherits(DietStatement, lang_Statement); 18383 $inherits(DietStatement, lang_Statement);
18323 DietStatement.prototype.visit = function(visitor) { 18384 DietStatement.prototype.visit = function(visitor) {
18324 return visitor.visitDietStatement(this); 18385 return visitor.visitDietStatement(this);
18325 } 18386 }
18326 DietStatement.prototype.visit$1 = function($0) { 18387 DietStatement.prototype.visit$1 = function($0) {
18327 return this.visit(($0 && $0.is$TreeVisitor())); 18388 return this.visit(($0 && $0.is$TreeVisitor()));
18328 }; 18389 };
18329 // ********** Code for NativeStatement ************** 18390 // ********** Code for NativeStatement **************
18330 function NativeStatement(body, span) { 18391 function NativeStatement(body, span) {
18331 this.body = body; 18392 this.body = body;
18393 // Initializers done
18332 lang_Statement.call(this, span); 18394 lang_Statement.call(this, span);
18333 // Initializers done
18334 } 18395 }
18335 $inherits(NativeStatement, lang_Statement); 18396 $inherits(NativeStatement, lang_Statement);
18336 NativeStatement.prototype.visit = function(visitor) { 18397 NativeStatement.prototype.visit = function(visitor) {
18337 return visitor.visitNativeStatement(this); 18398 return visitor.visitNativeStatement(this);
18338 } 18399 }
18339 NativeStatement.prototype.visit$1 = function($0) { 18400 NativeStatement.prototype.visit$1 = function($0) {
18340 return this.visit(($0 && $0.is$TreeVisitor())); 18401 return this.visit(($0 && $0.is$TreeVisitor()));
18341 }; 18402 };
18342 // ********** Code for LambdaExpression ************** 18403 // ********** Code for LambdaExpression **************
18343 function LambdaExpression(func, span) { 18404 function LambdaExpression(func, span) {
18344 this.func = func; 18405 this.func = func;
18406 // Initializers done
18345 lang_Expression.call(this, span); 18407 lang_Expression.call(this, span);
18346 // Initializers done
18347 } 18408 }
18348 $inherits(LambdaExpression, lang_Expression); 18409 $inherits(LambdaExpression, lang_Expression);
18349 LambdaExpression.prototype.is$LambdaExpression = function(){return this;}; 18410 LambdaExpression.prototype.is$LambdaExpression = function(){return this;};
18350 LambdaExpression.prototype.visit = function(visitor) { 18411 LambdaExpression.prototype.visit = function(visitor) {
18351 return visitor.visitLambdaExpression(this); 18412 return visitor.visitLambdaExpression(this);
18352 } 18413 }
18353 LambdaExpression.prototype.visit$1 = function($0) { 18414 LambdaExpression.prototype.visit$1 = function($0) {
18354 return this.visit(($0 && $0.is$TreeVisitor())); 18415 return this.visit(($0 && $0.is$TreeVisitor()));
18355 }; 18416 };
18356 // ********** Code for CallExpression ************** 18417 // ********** Code for CallExpression **************
18357 function CallExpression(target, arguments, span) { 18418 function CallExpression(target, arguments, span) {
18358 this.target = target; 18419 this.target = target;
18359 this.arguments = arguments; 18420 this.arguments = arguments;
18421 // Initializers done
18360 lang_Expression.call(this, span); 18422 lang_Expression.call(this, span);
18361 // Initializers done
18362 } 18423 }
18363 $inherits(CallExpression, lang_Expression); 18424 $inherits(CallExpression, lang_Expression);
18364 CallExpression.prototype.is$CallExpression = function(){return this;}; 18425 CallExpression.prototype.is$CallExpression = function(){return this;};
18365 CallExpression.prototype.get$arguments = function() { return this.arguments; }; 18426 CallExpression.prototype.get$arguments = function() { return this.arguments; };
18366 CallExpression.prototype.set$arguments = function(value) { return this.arguments = value; }; 18427 CallExpression.prototype.set$arguments = function(value) { return this.arguments = value; };
18367 CallExpression.prototype.visit = function(visitor) { 18428 CallExpression.prototype.visit = function(visitor) {
18368 return visitor.visitCallExpression(this); 18429 return visitor.visitCallExpression(this);
18369 } 18430 }
18370 CallExpression.prototype.visit$1 = function($0) { 18431 CallExpression.prototype.visit$1 = function($0) {
18371 return this.visit(($0 && $0.is$TreeVisitor())); 18432 return this.visit(($0 && $0.is$TreeVisitor()));
18372 }; 18433 };
18373 // ********** Code for IndexExpression ************** 18434 // ********** Code for IndexExpression **************
18374 function IndexExpression(target, index, span) { 18435 function IndexExpression(target, index, span) {
18375 this.target = target; 18436 this.target = target;
18376 this.index = index; 18437 this.index = index;
18438 // Initializers done
18377 lang_Expression.call(this, span); 18439 lang_Expression.call(this, span);
18378 // Initializers done
18379 } 18440 }
18380 $inherits(IndexExpression, lang_Expression); 18441 $inherits(IndexExpression, lang_Expression);
18381 IndexExpression.prototype.is$IndexExpression = function(){return this;}; 18442 IndexExpression.prototype.is$IndexExpression = function(){return this;};
18382 IndexExpression.prototype.visit = function(visitor) { 18443 IndexExpression.prototype.visit = function(visitor) {
18383 return visitor.visitIndexExpression(this); 18444 return visitor.visitIndexExpression(this);
18384 } 18445 }
18385 IndexExpression.prototype.visit$1 = function($0) { 18446 IndexExpression.prototype.visit$1 = function($0) {
18386 return this.visit(($0 && $0.is$TreeVisitor())); 18447 return this.visit(($0 && $0.is$TreeVisitor()));
18387 }; 18448 };
18388 // ********** Code for BinaryExpression ************** 18449 // ********** Code for BinaryExpression **************
18389 function BinaryExpression(op, x, y, span) { 18450 function BinaryExpression(op, x, y, span) {
18390 this.op = op; 18451 this.op = op;
18391 this.x = x; 18452 this.x = x;
18392 this.y = y; 18453 this.y = y;
18454 // Initializers done
18393 lang_Expression.call(this, span); 18455 lang_Expression.call(this, span);
18394 // Initializers done
18395 } 18456 }
18396 $inherits(BinaryExpression, lang_Expression); 18457 $inherits(BinaryExpression, lang_Expression);
18397 BinaryExpression.prototype.is$BinaryExpression = function(){return this;}; 18458 BinaryExpression.prototype.is$BinaryExpression = function(){return this;};
18398 BinaryExpression.prototype.visit = function(visitor) { 18459 BinaryExpression.prototype.visit = function(visitor) {
18399 return visitor.visitBinaryExpression(this); 18460 return visitor.visitBinaryExpression(this);
18400 } 18461 }
18401 BinaryExpression.prototype.visit$1 = function($0) { 18462 BinaryExpression.prototype.visit$1 = function($0) {
18402 return this.visit(($0 && $0.is$TreeVisitor())); 18463 return this.visit(($0 && $0.is$TreeVisitor()));
18403 }; 18464 };
18404 // ********** Code for UnaryExpression ************** 18465 // ********** Code for UnaryExpression **************
18405 function UnaryExpression(op, self, span) { 18466 function UnaryExpression(op, self, span) {
18406 this.op = op; 18467 this.op = op;
18407 this.self = self; 18468 this.self = self;
18469 // Initializers done
18408 lang_Expression.call(this, span); 18470 lang_Expression.call(this, span);
18409 // Initializers done
18410 } 18471 }
18411 $inherits(UnaryExpression, lang_Expression); 18472 $inherits(UnaryExpression, lang_Expression);
18412 UnaryExpression.prototype.visit = function(visitor) { 18473 UnaryExpression.prototype.visit = function(visitor) {
18413 return visitor.visitUnaryExpression(this); 18474 return visitor.visitUnaryExpression(this);
18414 } 18475 }
18415 UnaryExpression.prototype.visit$1 = function($0) { 18476 UnaryExpression.prototype.visit$1 = function($0) {
18416 return this.visit(($0 && $0.is$TreeVisitor())); 18477 return this.visit(($0 && $0.is$TreeVisitor()));
18417 }; 18478 };
18418 // ********** Code for PostfixExpression ************** 18479 // ********** Code for PostfixExpression **************
18419 function PostfixExpression(body, op, span) { 18480 function PostfixExpression(body, op, span) {
18420 this.body = body; 18481 this.body = body;
18421 this.op = op; 18482 this.op = op;
18483 // Initializers done
18422 lang_Expression.call(this, span); 18484 lang_Expression.call(this, span);
18423 // Initializers done
18424 } 18485 }
18425 $inherits(PostfixExpression, lang_Expression); 18486 $inherits(PostfixExpression, lang_Expression);
18426 PostfixExpression.prototype.is$PostfixExpression = function(){return this;}; 18487 PostfixExpression.prototype.is$PostfixExpression = function(){return this;};
18427 PostfixExpression.prototype.visit = function(visitor) { 18488 PostfixExpression.prototype.visit = function(visitor) {
18428 return visitor.visitPostfixExpression$1(this); 18489 return visitor.visitPostfixExpression$1(this);
18429 } 18490 }
18430 PostfixExpression.prototype.visit$1 = function($0) { 18491 PostfixExpression.prototype.visit$1 = function($0) {
18431 return this.visit(($0 && $0.is$TreeVisitor())); 18492 return this.visit(($0 && $0.is$TreeVisitor()));
18432 }; 18493 };
18433 // ********** Code for lang_NewExpression ************** 18494 // ********** Code for lang_NewExpression **************
18434 function lang_NewExpression(isConst, type, name, arguments, span) { 18495 function lang_NewExpression(isConst, type, name, arguments, span) {
18435 this.isConst = isConst; 18496 this.isConst = isConst;
18436 this.type = type; 18497 this.type = type;
18437 this.name = name; 18498 this.name = name;
18438 this.arguments = arguments; 18499 this.arguments = arguments;
18500 // Initializers done
18439 lang_Expression.call(this, span); 18501 lang_Expression.call(this, span);
18440 // Initializers done
18441 } 18502 }
18442 $inherits(lang_NewExpression, lang_Expression); 18503 $inherits(lang_NewExpression, lang_Expression);
18443 lang_NewExpression.prototype.get$isConst = function() { return this.isConst; }; 18504 lang_NewExpression.prototype.get$isConst = function() { return this.isConst; };
18444 lang_NewExpression.prototype.set$isConst = function(value) { return this.isConst = value; }; 18505 lang_NewExpression.prototype.set$isConst = function(value) { return this.isConst = value; };
18445 lang_NewExpression.prototype.get$type = function() { return this.type; }; 18506 lang_NewExpression.prototype.get$type = function() { return this.type; };
18446 lang_NewExpression.prototype.set$type = function(value) { return this.type = val ue; }; 18507 lang_NewExpression.prototype.set$type = function(value) { return this.type = val ue; };
18447 lang_NewExpression.prototype.get$name = function() { return this.name; }; 18508 lang_NewExpression.prototype.get$name = function() { return this.name; };
18448 lang_NewExpression.prototype.set$name = function(value) { return this.name = val ue; }; 18509 lang_NewExpression.prototype.set$name = function(value) { return this.name = val ue; };
18449 lang_NewExpression.prototype.get$arguments = function() { return this.arguments; }; 18510 lang_NewExpression.prototype.get$arguments = function() { return this.arguments; };
18450 lang_NewExpression.prototype.set$arguments = function(value) { return this.argum ents = value; }; 18511 lang_NewExpression.prototype.set$arguments = function(value) { return this.argum ents = value; };
18451 lang_NewExpression.prototype.visit = function(visitor) { 18512 lang_NewExpression.prototype.visit = function(visitor) {
18452 return visitor.visitNewExpression(this); 18513 return visitor.visitNewExpression(this);
18453 } 18514 }
18454 lang_NewExpression.prototype.visit$1 = function($0) { 18515 lang_NewExpression.prototype.visit$1 = function($0) {
18455 return this.visit(($0 && $0.is$TreeVisitor())); 18516 return this.visit(($0 && $0.is$TreeVisitor()));
18456 }; 18517 };
18457 // ********** Code for ListExpression ************** 18518 // ********** Code for ListExpression **************
18458 function ListExpression(isConst, type, values, span) { 18519 function ListExpression(isConst, type, values, span) {
18459 this.isConst = isConst; 18520 this.isConst = isConst;
18460 this.type = type; 18521 this.type = type;
18461 this.values = values; 18522 this.values = values;
18523 // Initializers done
18462 lang_Expression.call(this, span); 18524 lang_Expression.call(this, span);
18463 // Initializers done
18464 } 18525 }
18465 $inherits(ListExpression, lang_Expression); 18526 $inherits(ListExpression, lang_Expression);
18466 ListExpression.prototype.get$isConst = function() { return this.isConst; }; 18527 ListExpression.prototype.get$isConst = function() { return this.isConst; };
18467 ListExpression.prototype.set$isConst = function(value) { return this.isConst = v alue; }; 18528 ListExpression.prototype.set$isConst = function(value) { return this.isConst = v alue; };
18468 ListExpression.prototype.get$type = function() { return this.type; }; 18529 ListExpression.prototype.get$type = function() { return this.type; };
18469 ListExpression.prototype.set$type = function(value) { return this.type = value; }; 18530 ListExpression.prototype.set$type = function(value) { return this.type = value; };
18470 ListExpression.prototype.visit = function(visitor) { 18531 ListExpression.prototype.visit = function(visitor) {
18471 return visitor.visitListExpression(this); 18532 return visitor.visitListExpression(this);
18472 } 18533 }
18473 ListExpression.prototype.visit$1 = function($0) { 18534 ListExpression.prototype.visit$1 = function($0) {
18474 return this.visit(($0 && $0.is$TreeVisitor())); 18535 return this.visit(($0 && $0.is$TreeVisitor()));
18475 }; 18536 };
18476 // ********** Code for MapExpression ************** 18537 // ********** Code for MapExpression **************
18477 function MapExpression(isConst, type, items, span) { 18538 function MapExpression(isConst, type, items, span) {
18478 this.isConst = isConst; 18539 this.isConst = isConst;
18479 this.type = type; 18540 this.type = type;
18480 this.items = items; 18541 this.items = items;
18542 // Initializers done
18481 lang_Expression.call(this, span); 18543 lang_Expression.call(this, span);
18482 // Initializers done
18483 } 18544 }
18484 $inherits(MapExpression, lang_Expression); 18545 $inherits(MapExpression, lang_Expression);
18485 MapExpression.prototype.get$isConst = function() { return this.isConst; }; 18546 MapExpression.prototype.get$isConst = function() { return this.isConst; };
18486 MapExpression.prototype.set$isConst = function(value) { return this.isConst = va lue; }; 18547 MapExpression.prototype.set$isConst = function(value) { return this.isConst = va lue; };
18487 MapExpression.prototype.get$type = function() { return this.type; }; 18548 MapExpression.prototype.get$type = function() { return this.type; };
18488 MapExpression.prototype.set$type = function(value) { return this.type = value; } ; 18549 MapExpression.prototype.set$type = function(value) { return this.type = value; } ;
18489 MapExpression.prototype.visit = function(visitor) { 18550 MapExpression.prototype.visit = function(visitor) {
18490 return visitor.visitMapExpression(this); 18551 return visitor.visitMapExpression(this);
18491 } 18552 }
18492 MapExpression.prototype.visit$1 = function($0) { 18553 MapExpression.prototype.visit$1 = function($0) {
18493 return this.visit(($0 && $0.is$TreeVisitor())); 18554 return this.visit(($0 && $0.is$TreeVisitor()));
18494 }; 18555 };
18495 // ********** Code for ConditionalExpression ************** 18556 // ********** Code for ConditionalExpression **************
18496 function ConditionalExpression(test, trueBranch, falseBranch, span) { 18557 function ConditionalExpression(test, trueBranch, falseBranch, span) {
18497 this.test = test; 18558 this.test = test;
18498 this.trueBranch = trueBranch; 18559 this.trueBranch = trueBranch;
18499 this.falseBranch = falseBranch; 18560 this.falseBranch = falseBranch;
18561 // Initializers done
18500 lang_Expression.call(this, span); 18562 lang_Expression.call(this, span);
18501 // Initializers done
18502 } 18563 }
18503 $inherits(ConditionalExpression, lang_Expression); 18564 $inherits(ConditionalExpression, lang_Expression);
18504 ConditionalExpression.prototype.visit = function(visitor) { 18565 ConditionalExpression.prototype.visit = function(visitor) {
18505 return visitor.visitConditionalExpression(this); 18566 return visitor.visitConditionalExpression(this);
18506 } 18567 }
18507 ConditionalExpression.prototype.visit$1 = function($0) { 18568 ConditionalExpression.prototype.visit$1 = function($0) {
18508 return this.visit(($0 && $0.is$TreeVisitor())); 18569 return this.visit(($0 && $0.is$TreeVisitor()));
18509 }; 18570 };
18510 // ********** Code for IsExpression ************** 18571 // ********** Code for IsExpression **************
18511 function IsExpression(isTrue, x, type, span) { 18572 function IsExpression(isTrue, x, type, span) {
18512 this.isTrue = isTrue; 18573 this.isTrue = isTrue;
18513 this.x = x; 18574 this.x = x;
18514 this.type = type; 18575 this.type = type;
18576 // Initializers done
18515 lang_Expression.call(this, span); 18577 lang_Expression.call(this, span);
18516 // Initializers done
18517 } 18578 }
18518 $inherits(IsExpression, lang_Expression); 18579 $inherits(IsExpression, lang_Expression);
18519 IsExpression.prototype.get$type = function() { return this.type; }; 18580 IsExpression.prototype.get$type = function() { return this.type; };
18520 IsExpression.prototype.set$type = function(value) { return this.type = value; }; 18581 IsExpression.prototype.set$type = function(value) { return this.type = value; };
18521 IsExpression.prototype.visit = function(visitor) { 18582 IsExpression.prototype.visit = function(visitor) {
18522 return visitor.visitIsExpression(this); 18583 return visitor.visitIsExpression(this);
18523 } 18584 }
18524 IsExpression.prototype.visit$1 = function($0) { 18585 IsExpression.prototype.visit$1 = function($0) {
18525 return this.visit(($0 && $0.is$TreeVisitor())); 18586 return this.visit(($0 && $0.is$TreeVisitor()));
18526 }; 18587 };
18527 // ********** Code for ParenExpression ************** 18588 // ********** Code for ParenExpression **************
18528 function ParenExpression(body, span) { 18589 function ParenExpression(body, span) {
18529 this.body = body; 18590 this.body = body;
18591 // Initializers done
18530 lang_Expression.call(this, span); 18592 lang_Expression.call(this, span);
18531 // Initializers done
18532 } 18593 }
18533 $inherits(ParenExpression, lang_Expression); 18594 $inherits(ParenExpression, lang_Expression);
18534 ParenExpression.prototype.visit = function(visitor) { 18595 ParenExpression.prototype.visit = function(visitor) {
18535 return visitor.visitParenExpression(this); 18596 return visitor.visitParenExpression(this);
18536 } 18597 }
18537 ParenExpression.prototype.visit$1 = function($0) { 18598 ParenExpression.prototype.visit$1 = function($0) {
18538 return this.visit(($0 && $0.is$TreeVisitor())); 18599 return this.visit(($0 && $0.is$TreeVisitor()));
18539 }; 18600 };
18540 // ********** Code for DotExpression ************** 18601 // ********** Code for DotExpression **************
18541 function DotExpression(self, name, span) { 18602 function DotExpression(self, name, span) {
18542 this.self = self; 18603 this.self = self;
18543 this.name = name; 18604 this.name = name;
18605 // Initializers done
18544 lang_Expression.call(this, span); 18606 lang_Expression.call(this, span);
18545 // Initializers done
18546 } 18607 }
18547 $inherits(DotExpression, lang_Expression); 18608 $inherits(DotExpression, lang_Expression);
18548 DotExpression.prototype.is$DotExpression = function(){return this;}; 18609 DotExpression.prototype.is$DotExpression = function(){return this;};
18549 DotExpression.prototype.get$name = function() { return this.name; }; 18610 DotExpression.prototype.get$name = function() { return this.name; };
18550 DotExpression.prototype.set$name = function(value) { return this.name = value; } ; 18611 DotExpression.prototype.set$name = function(value) { return this.name = value; } ;
18551 DotExpression.prototype.visit = function(visitor) { 18612 DotExpression.prototype.visit = function(visitor) {
18552 return visitor.visitDotExpression(this); 18613 return visitor.visitDotExpression(this);
18553 } 18614 }
18554 DotExpression.prototype.visit$1 = function($0) { 18615 DotExpression.prototype.visit$1 = function($0) {
18555 return this.visit(($0 && $0.is$TreeVisitor())); 18616 return this.visit(($0 && $0.is$TreeVisitor()));
18556 }; 18617 };
18557 // ********** Code for VarExpression ************** 18618 // ********** Code for VarExpression **************
18558 function VarExpression(name, span) { 18619 function VarExpression(name, span) {
18559 this.name = name; 18620 this.name = name;
18621 // Initializers done
18560 lang_Expression.call(this, span); 18622 lang_Expression.call(this, span);
18561 // Initializers done
18562 } 18623 }
18563 $inherits(VarExpression, lang_Expression); 18624 $inherits(VarExpression, lang_Expression);
18564 VarExpression.prototype.is$VarExpression = function(){return this;}; 18625 VarExpression.prototype.is$VarExpression = function(){return this;};
18565 VarExpression.prototype.get$name = function() { return this.name; }; 18626 VarExpression.prototype.get$name = function() { return this.name; };
18566 VarExpression.prototype.set$name = function(value) { return this.name = value; } ; 18627 VarExpression.prototype.set$name = function(value) { return this.name = value; } ;
18567 VarExpression.prototype.visit = function(visitor) { 18628 VarExpression.prototype.visit = function(visitor) {
18568 return visitor.visitVarExpression(this); 18629 return visitor.visitVarExpression(this);
18569 } 18630 }
18570 VarExpression.prototype.visit$1 = function($0) { 18631 VarExpression.prototype.visit$1 = function($0) {
18571 return this.visit(($0 && $0.is$TreeVisitor())); 18632 return this.visit(($0 && $0.is$TreeVisitor()));
18572 }; 18633 };
18573 // ********** Code for ThisExpression ************** 18634 // ********** Code for ThisExpression **************
18574 function ThisExpression(span) { 18635 function ThisExpression(span) {
18636 // Initializers done
18575 lang_Expression.call(this, span); 18637 lang_Expression.call(this, span);
18576 // Initializers done
18577 } 18638 }
18578 $inherits(ThisExpression, lang_Expression); 18639 $inherits(ThisExpression, lang_Expression);
18579 ThisExpression.prototype.visit = function(visitor) { 18640 ThisExpression.prototype.visit = function(visitor) {
18580 return visitor.visitThisExpression(this); 18641 return visitor.visitThisExpression(this);
18581 } 18642 }
18582 ThisExpression.prototype.visit$1 = function($0) { 18643 ThisExpression.prototype.visit$1 = function($0) {
18583 return this.visit(($0 && $0.is$TreeVisitor())); 18644 return this.visit(($0 && $0.is$TreeVisitor()));
18584 }; 18645 };
18585 // ********** Code for SuperExpression ************** 18646 // ********** Code for SuperExpression **************
18586 function SuperExpression(span) { 18647 function SuperExpression(span) {
18648 // Initializers done
18587 lang_Expression.call(this, span); 18649 lang_Expression.call(this, span);
18588 // Initializers done
18589 } 18650 }
18590 $inherits(SuperExpression, lang_Expression); 18651 $inherits(SuperExpression, lang_Expression);
18591 SuperExpression.prototype.visit = function(visitor) { 18652 SuperExpression.prototype.visit = function(visitor) {
18592 return visitor.visitSuperExpression(this); 18653 return visitor.visitSuperExpression(this);
18593 } 18654 }
18594 SuperExpression.prototype.visit$1 = function($0) { 18655 SuperExpression.prototype.visit$1 = function($0) {
18595 return this.visit(($0 && $0.is$TreeVisitor())); 18656 return this.visit(($0 && $0.is$TreeVisitor()));
18596 }; 18657 };
18597 // ********** Code for NullExpression ************** 18658 // ********** Code for NullExpression **************
18598 function NullExpression(span) { 18659 function NullExpression(span) {
18660 // Initializers done
18599 lang_Expression.call(this, span); 18661 lang_Expression.call(this, span);
18600 // Initializers done
18601 } 18662 }
18602 $inherits(NullExpression, lang_Expression); 18663 $inherits(NullExpression, lang_Expression);
18603 NullExpression.prototype.visit = function(visitor) { 18664 NullExpression.prototype.visit = function(visitor) {
18604 return visitor.visitNullExpression(this); 18665 return visitor.visitNullExpression(this);
18605 } 18666 }
18606 NullExpression.prototype.visit$1 = function($0) { 18667 NullExpression.prototype.visit$1 = function($0) {
18607 return this.visit(($0 && $0.is$TreeVisitor())); 18668 return this.visit(($0 && $0.is$TreeVisitor()));
18608 }; 18669 };
18609 // ********** Code for LiteralExpression ************** 18670 // ********** Code for LiteralExpression **************
18610 function LiteralExpression(value, type, text, span) { 18671 function LiteralExpression(value, type, text, span) {
18611 this.value = value; 18672 this.value = value;
18612 this.type = type; 18673 this.type = type;
18613 this.text = text; 18674 this.text = text;
18675 // Initializers done
18614 lang_Expression.call(this, span); 18676 lang_Expression.call(this, span);
18615 // Initializers done
18616 } 18677 }
18617 $inherits(LiteralExpression, lang_Expression); 18678 $inherits(LiteralExpression, lang_Expression);
18618 LiteralExpression.prototype.get$value = function() { return this.value; }; 18679 LiteralExpression.prototype.get$value = function() { return this.value; };
18619 LiteralExpression.prototype.set$value = function(value) { return this.value = va lue; }; 18680 LiteralExpression.prototype.set$value = function(value) { return this.value = va lue; };
18620 LiteralExpression.prototype.get$type = function() { return this.type; }; 18681 LiteralExpression.prototype.get$type = function() { return this.type; };
18621 LiteralExpression.prototype.set$type = function(value) { return this.type = valu e; }; 18682 LiteralExpression.prototype.set$type = function(value) { return this.type = valu e; };
18622 LiteralExpression.prototype.get$text = function() { return this.text; }; 18683 LiteralExpression.prototype.get$text = function() { return this.text; };
18623 LiteralExpression.prototype.set$text = function(value) { return this.text = valu e; }; 18684 LiteralExpression.prototype.set$text = function(value) { return this.text = valu e; };
18624 LiteralExpression.prototype.visit = function(visitor) { 18685 LiteralExpression.prototype.visit = function(visitor) {
18625 return visitor.visitLiteralExpression(this); 18686 return visitor.visitLiteralExpression(this);
18626 } 18687 }
18627 LiteralExpression.prototype.visit$1 = function($0) { 18688 LiteralExpression.prototype.visit$1 = function($0) {
18628 return this.visit(($0 && $0.is$TreeVisitor())); 18689 return this.visit(($0 && $0.is$TreeVisitor()));
18629 }; 18690 };
18630 // ********** Code for NameTypeReference ************** 18691 // ********** Code for NameTypeReference **************
18631 function NameTypeReference(isFinal, name, names, span) { 18692 function NameTypeReference(isFinal, name, names, span) {
18632 this.isFinal = isFinal; 18693 this.isFinal = isFinal;
18633 this.name = name; 18694 this.name = name;
18634 this.names = names; 18695 this.names = names;
18696 // Initializers done
18635 TypeReference.call(this, span); 18697 TypeReference.call(this, span);
18636 // Initializers done
18637 } 18698 }
18638 $inherits(NameTypeReference, TypeReference); 18699 $inherits(NameTypeReference, TypeReference);
18639 NameTypeReference.prototype.is$NameTypeReference = function(){return this;}; 18700 NameTypeReference.prototype.is$NameTypeReference = function(){return this;};
18640 NameTypeReference.prototype.get$name = function() { return this.name; }; 18701 NameTypeReference.prototype.get$name = function() { return this.name; };
18641 NameTypeReference.prototype.set$name = function(value) { return this.name = valu e; }; 18702 NameTypeReference.prototype.set$name = function(value) { return this.name = valu e; };
18642 NameTypeReference.prototype.visit = function(visitor) { 18703 NameTypeReference.prototype.visit = function(visitor) {
18643 return visitor.visitNameTypeReference(this); 18704 return visitor.visitNameTypeReference(this);
18644 } 18705 }
18645 NameTypeReference.prototype.visit$1 = function($0) { 18706 NameTypeReference.prototype.visit$1 = function($0) {
18646 return this.visit(($0 && $0.is$TreeVisitor())); 18707 return this.visit(($0 && $0.is$TreeVisitor()));
18647 }; 18708 };
18648 // ********** Code for GenericTypeReference ************** 18709 // ********** Code for GenericTypeReference **************
18649 function GenericTypeReference(baseType, typeArguments, depth, span) { 18710 function GenericTypeReference(baseType, typeArguments, depth, span) {
18650 this.baseType = baseType; 18711 this.baseType = baseType;
18651 this.typeArguments = typeArguments; 18712 this.typeArguments = typeArguments;
18652 this.depth = depth; 18713 this.depth = depth;
18714 // Initializers done
18653 TypeReference.call(this, span); 18715 TypeReference.call(this, span);
18654 // Initializers done
18655 } 18716 }
18656 $inherits(GenericTypeReference, TypeReference); 18717 $inherits(GenericTypeReference, TypeReference);
18657 GenericTypeReference.prototype.is$GenericTypeReference = function(){return this; }; 18718 GenericTypeReference.prototype.is$GenericTypeReference = function(){return this; };
18658 GenericTypeReference.prototype.visit = function(visitor) { 18719 GenericTypeReference.prototype.visit = function(visitor) {
18659 return visitor.visitGenericTypeReference(this); 18720 return visitor.visitGenericTypeReference(this);
18660 } 18721 }
18661 GenericTypeReference.prototype.visit$1 = function($0) { 18722 GenericTypeReference.prototype.visit$1 = function($0) {
18662 return this.visit(($0 && $0.is$TreeVisitor())); 18723 return this.visit(($0 && $0.is$TreeVisitor()));
18663 }; 18724 };
18664 // ********** Code for FunctionTypeReference ************** 18725 // ********** Code for FunctionTypeReference **************
18665 function FunctionTypeReference(isFinal, func, span) { 18726 function FunctionTypeReference(isFinal, func, span) {
18666 this.isFinal = isFinal; 18727 this.isFinal = isFinal;
18667 this.func = func; 18728 this.func = func;
18729 // Initializers done
18668 TypeReference.call(this, span); 18730 TypeReference.call(this, span);
18669 // Initializers done
18670 } 18731 }
18671 $inherits(FunctionTypeReference, TypeReference); 18732 $inherits(FunctionTypeReference, TypeReference);
18672 FunctionTypeReference.prototype.is$FunctionTypeReference = function(){return thi s;}; 18733 FunctionTypeReference.prototype.is$FunctionTypeReference = function(){return thi s;};
18673 FunctionTypeReference.prototype.visit = function(visitor) { 18734 FunctionTypeReference.prototype.visit = function(visitor) {
18674 return visitor.visitFunctionTypeReference(this); 18735 return visitor.visitFunctionTypeReference(this);
18675 } 18736 }
18676 FunctionTypeReference.prototype.visit$1 = function($0) { 18737 FunctionTypeReference.prototype.visit$1 = function($0) {
18677 return this.visit(($0 && $0.is$TreeVisitor())); 18738 return this.visit(($0 && $0.is$TreeVisitor()));
18678 }; 18739 };
18679 // ********** Code for ArgumentNode ************** 18740 // ********** Code for ArgumentNode **************
18680 function ArgumentNode(label, value, span) { 18741 function ArgumentNode(label, value, span) {
18681 this.label = label; 18742 this.label = label;
18682 this.value = value; 18743 this.value = value;
18744 // Initializers done
18683 lang_Node.call(this, span); 18745 lang_Node.call(this, span);
18684 // Initializers done
18685 } 18746 }
18686 $inherits(ArgumentNode, lang_Node); 18747 $inherits(ArgumentNode, lang_Node);
18687 ArgumentNode.prototype.is$ArgumentNode = function(){return this;}; 18748 ArgumentNode.prototype.is$ArgumentNode = function(){return this;};
18688 ArgumentNode.prototype.get$value = function() { return this.value; }; 18749 ArgumentNode.prototype.get$value = function() { return this.value; };
18689 ArgumentNode.prototype.set$value = function(value) { return this.value = value; }; 18750 ArgumentNode.prototype.set$value = function(value) { return this.value = value; };
18690 ArgumentNode.prototype.visit = function(visitor) { 18751 ArgumentNode.prototype.visit = function(visitor) {
18691 return visitor.visitArgumentNode(this); 18752 return visitor.visitArgumentNode(this);
18692 } 18753 }
18693 ArgumentNode.prototype.visit$1 = function($0) { 18754 ArgumentNode.prototype.visit$1 = function($0) {
18694 return this.visit(($0 && $0.is$TreeVisitor())); 18755 return this.visit(($0 && $0.is$TreeVisitor()));
18695 }; 18756 };
18696 // ********** Code for FormalNode ************** 18757 // ********** Code for FormalNode **************
18697 function FormalNode(isThis, isRest, type, name, value, span) { 18758 function FormalNode(isThis, isRest, type, name, value, span) {
18698 this.isThis = isThis; 18759 this.isThis = isThis;
18699 this.isRest = isRest; 18760 this.isRest = isRest;
18700 this.type = type; 18761 this.type = type;
18701 this.name = name; 18762 this.name = name;
18702 this.value = value; 18763 this.value = value;
18764 // Initializers done
18703 lang_Node.call(this, span); 18765 lang_Node.call(this, span);
18704 // Initializers done
18705 } 18766 }
18706 $inherits(FormalNode, lang_Node); 18767 $inherits(FormalNode, lang_Node);
18707 FormalNode.prototype.get$type = function() { return this.type; }; 18768 FormalNode.prototype.get$type = function() { return this.type; };
18708 FormalNode.prototype.set$type = function(value) { return this.type = value; }; 18769 FormalNode.prototype.set$type = function(value) { return this.type = value; };
18709 FormalNode.prototype.get$name = function() { return this.name; }; 18770 FormalNode.prototype.get$name = function() { return this.name; };
18710 FormalNode.prototype.set$name = function(value) { return this.name = value; }; 18771 FormalNode.prototype.set$name = function(value) { return this.name = value; };
18711 FormalNode.prototype.get$value = function() { return this.value; }; 18772 FormalNode.prototype.get$value = function() { return this.value; };
18712 FormalNode.prototype.set$value = function(value) { return this.value = value; }; 18773 FormalNode.prototype.set$value = function(value) { return this.value = value; };
18713 FormalNode.prototype.visit = function(visitor) { 18774 FormalNode.prototype.visit = function(visitor) {
18714 return visitor.visitFormalNode(this); 18775 return visitor.visitFormalNode(this);
18715 } 18776 }
18716 FormalNode.prototype.visit$1 = function($0) { 18777 FormalNode.prototype.visit$1 = function($0) {
18717 return this.visit(($0 && $0.is$TreeVisitor())); 18778 return this.visit(($0 && $0.is$TreeVisitor()));
18718 }; 18779 };
18719 // ********** Code for CatchNode ************** 18780 // ********** Code for CatchNode **************
18720 function CatchNode(exception, trace, body, span) { 18781 function CatchNode(exception, trace, body, span) {
18721 this.exception = exception; 18782 this.exception = exception;
18722 this.trace = trace; 18783 this.trace = trace;
18723 this.body = body; 18784 this.body = body;
18785 // Initializers done
18724 lang_Node.call(this, span); 18786 lang_Node.call(this, span);
18725 // Initializers done
18726 } 18787 }
18727 $inherits(CatchNode, lang_Node); 18788 $inherits(CatchNode, lang_Node);
18728 CatchNode.prototype.get$exception = function() { return this.exception; }; 18789 CatchNode.prototype.get$exception = function() { return this.exception; };
18729 CatchNode.prototype.set$exception = function(value) { return this.exception = va lue; }; 18790 CatchNode.prototype.set$exception = function(value) { return this.exception = va lue; };
18730 CatchNode.prototype.visit = function(visitor) { 18791 CatchNode.prototype.visit = function(visitor) {
18731 return visitor.visitCatchNode(this); 18792 return visitor.visitCatchNode(this);
18732 } 18793 }
18733 CatchNode.prototype.visit$1 = function($0) { 18794 CatchNode.prototype.visit$1 = function($0) {
18734 return this.visit(($0 && $0.is$TreeVisitor())); 18795 return this.visit(($0 && $0.is$TreeVisitor()));
18735 }; 18796 };
18736 // ********** Code for CaseNode ************** 18797 // ********** Code for CaseNode **************
18737 function CaseNode(label, cases, statements, span) { 18798 function CaseNode(label, cases, statements, span) {
18738 this.label = label; 18799 this.label = label;
18739 this.cases = cases; 18800 this.cases = cases;
18740 this.statements = statements; 18801 this.statements = statements;
18802 // Initializers done
18741 lang_Node.call(this, span); 18803 lang_Node.call(this, span);
18742 // Initializers done
18743 } 18804 }
18744 $inherits(CaseNode, lang_Node); 18805 $inherits(CaseNode, lang_Node);
18745 CaseNode.prototype.visit = function(visitor) { 18806 CaseNode.prototype.visit = function(visitor) {
18746 return visitor.visitCaseNode(this); 18807 return visitor.visitCaseNode(this);
18747 } 18808 }
18748 CaseNode.prototype.visit$1 = function($0) { 18809 CaseNode.prototype.visit$1 = function($0) {
18749 return this.visit(($0 && $0.is$TreeVisitor())); 18810 return this.visit(($0 && $0.is$TreeVisitor()));
18750 }; 18811 };
18751 // ********** Code for TypeParameter ************** 18812 // ********** Code for TypeParameter **************
18752 function TypeParameter(name, extendsType, span) { 18813 function TypeParameter(name, extendsType, span) {
18753 this.name = name; 18814 this.name = name;
18754 this.extendsType = extendsType; 18815 this.extendsType = extendsType;
18816 // Initializers done
18755 lang_Node.call(this, span); 18817 lang_Node.call(this, span);
18756 // Initializers done
18757 } 18818 }
18758 $inherits(TypeParameter, lang_Node); 18819 $inherits(TypeParameter, lang_Node);
18759 TypeParameter.prototype.get$name = function() { return this.name; }; 18820 TypeParameter.prototype.get$name = function() { return this.name; };
18760 TypeParameter.prototype.set$name = function(value) { return this.name = value; } ; 18821 TypeParameter.prototype.set$name = function(value) { return this.name = value; } ;
18761 TypeParameter.prototype.visit = function(visitor) { 18822 TypeParameter.prototype.visit = function(visitor) {
18762 return visitor.visitTypeParameter(this); 18823 return visitor.visitTypeParameter(this);
18763 } 18824 }
18764 TypeParameter.prototype.visit$1 = function($0) { 18825 TypeParameter.prototype.visit$1 = function($0) {
18765 return this.visit(($0 && $0.is$TreeVisitor())); 18826 return this.visit(($0 && $0.is$TreeVisitor()));
18766 }; 18827 };
18767 // ********** Code for lang_Identifier ************** 18828 // ********** Code for lang_Identifier **************
18768 function lang_Identifier(name, span) { 18829 function lang_Identifier(name, span) {
18769 this.name = name; 18830 this.name = name;
18831 // Initializers done
18770 lang_Node.call(this, span); 18832 lang_Node.call(this, span);
18771 // Initializers done
18772 } 18833 }
18773 $inherits(lang_Identifier, lang_Node); 18834 $inherits(lang_Identifier, lang_Node);
18774 lang_Identifier.prototype.is$lang_Identifier = function(){return this;}; 18835 lang_Identifier.prototype.is$lang_Identifier = function(){return this;};
18775 lang_Identifier.prototype.get$name = function() { return this.name; }; 18836 lang_Identifier.prototype.get$name = function() { return this.name; };
18776 lang_Identifier.prototype.set$name = function(value) { return this.name = value; }; 18837 lang_Identifier.prototype.set$name = function(value) { return this.name = value; };
18777 lang_Identifier.prototype.visit = function(visitor) { 18838 lang_Identifier.prototype.visit = function(visitor) {
18778 return visitor.visitIdentifier(this); 18839 return visitor.visitIdentifier(this);
18779 } 18840 }
18780 lang_Identifier.prototype.visit$1 = function($0) { 18841 lang_Identifier.prototype.visit$1 = function($0) {
18781 return this.visit(($0 && $0.is$TreeVisitor())); 18842 return this.visit(($0 && $0.is$TreeVisitor()));
18782 }; 18843 };
18783 // ********** Code for DeclaredIdentifier ************** 18844 // ********** Code for DeclaredIdentifier **************
18784 function DeclaredIdentifier(type, name, span) { 18845 function DeclaredIdentifier(type, name, span) {
18785 this.type = type; 18846 this.type = type;
18786 this.name = name; 18847 this.name = name;
18848 // Initializers done
18787 lang_Expression.call(this, span); 18849 lang_Expression.call(this, span);
18788 // Initializers done
18789 } 18850 }
18790 $inherits(DeclaredIdentifier, lang_Expression); 18851 $inherits(DeclaredIdentifier, lang_Expression);
18791 DeclaredIdentifier.prototype.is$DeclaredIdentifier = function(){return this;}; 18852 DeclaredIdentifier.prototype.is$DeclaredIdentifier = function(){return this;};
18792 DeclaredIdentifier.prototype.get$type = function() { return this.type; }; 18853 DeclaredIdentifier.prototype.get$type = function() { return this.type; };
18793 DeclaredIdentifier.prototype.set$type = function(value) { return this.type = val ue; }; 18854 DeclaredIdentifier.prototype.set$type = function(value) { return this.type = val ue; };
18794 DeclaredIdentifier.prototype.get$name = function() { return this.name; }; 18855 DeclaredIdentifier.prototype.get$name = function() { return this.name; };
18795 DeclaredIdentifier.prototype.set$name = function(value) { return this.name = val ue; }; 18856 DeclaredIdentifier.prototype.set$name = function(value) { return this.name = val ue; };
18796 DeclaredIdentifier.prototype.visit = function(visitor) { 18857 DeclaredIdentifier.prototype.visit = function(visitor) {
18797 return visitor.visitDeclaredIdentifier(this); 18858 return visitor.visitDeclaredIdentifier(this);
18798 } 18859 }
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
19043 }; 19104 };
19044 lang_Type.prototype.resolveMember$1 = function($0) { 19105 lang_Type.prototype.resolveMember$1 = function($0) {
19045 return this.resolveMember($assert_String($0)); 19106 return this.resolveMember($assert_String($0));
19046 }; 19107 };
19047 lang_Type.prototype.resolveTypeParams$1 = function($0) { 19108 lang_Type.prototype.resolveTypeParams$1 = function($0) {
19048 return this.resolveTypeParams(($0 && $0.is$ConcreteType())); 19109 return this.resolveTypeParams(($0 && $0.is$ConcreteType()));
19049 }; 19110 };
19050 // ********** Code for ParameterType ************** 19111 // ********** Code for ParameterType **************
19051 function ParameterType(name, typeParameter) { 19112 function ParameterType(name, typeParameter) {
19052 this.typeParameter = typeParameter; 19113 this.typeParameter = typeParameter;
19114 // Initializers done
19053 lang_Type.call(this, name); 19115 lang_Type.call(this, name);
19054 // Initializers done
19055 } 19116 }
19056 $inherits(ParameterType, lang_Type); 19117 $inherits(ParameterType, lang_Type);
19057 ParameterType.prototype.is$ParameterType = function(){return this;}; 19118 ParameterType.prototype.is$ParameterType = function(){return this;};
19058 ParameterType.prototype.get$isClass = function() { 19119 ParameterType.prototype.get$isClass = function() {
19059 return false; 19120 return false;
19060 } 19121 }
19061 ParameterType.prototype.get$library = function() { 19122 ParameterType.prototype.get$library = function() {
19062 return null; 19123 return null;
19063 } 19124 }
19064 ParameterType.prototype.get$span = function() { 19125 ParameterType.prototype.get$span = function() {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
19117 }; 19178 };
19118 ParameterType.prototype.resolveMember$1 = function($0) { 19179 ParameterType.prototype.resolveMember$1 = function($0) {
19119 return this.resolveMember($assert_String($0)); 19180 return this.resolveMember($assert_String($0));
19120 }; 19181 };
19121 ParameterType.prototype.resolveTypeParams$1 = function($0) { 19182 ParameterType.prototype.resolveTypeParams$1 = function($0) {
19122 return this.resolveTypeParams(($0 && $0.is$ConcreteType())); 19183 return this.resolveTypeParams(($0 && $0.is$ConcreteType()));
19123 }; 19184 };
19124 // ********** Code for NonNullableType ************** 19185 // ********** Code for NonNullableType **************
19125 function NonNullableType(type) { 19186 function NonNullableType(type) {
19126 this.type = type; 19187 this.type = type;
19188 // Initializers done
19127 lang_Type.call(this, type.name); 19189 lang_Type.call(this, type.name);
19128 // Initializers done
19129 } 19190 }
19130 $inherits(NonNullableType, lang_Type); 19191 $inherits(NonNullableType, lang_Type);
19131 NonNullableType.prototype.get$type = function() { return this.type; }; 19192 NonNullableType.prototype.get$type = function() { return this.type; };
19132 NonNullableType.prototype.get$isNullable = function() { 19193 NonNullableType.prototype.get$isNullable = function() {
19133 return false; 19194 return false;
19134 } 19195 }
19135 NonNullableType.prototype.get$isBool = function() { 19196 NonNullableType.prototype.get$isBool = function() {
19136 return this.type.get$isBool(); 19197 return this.type.get$isBool();
19137 } 19198 }
19138 NonNullableType.prototype.get$isUsed = function() { 19199 NonNullableType.prototype.get$isUsed = function() {
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
19259 return this.resolveTypeParams(($0 && $0.is$ConcreteType())); 19320 return this.resolveTypeParams(($0 && $0.is$ConcreteType()));
19260 }; 19321 };
19261 // ********** Code for ConcreteType ************** 19322 // ********** Code for ConcreteType **************
19262 function ConcreteType(name, genericType, typeArguments, typeArgsInOrder) { 19323 function ConcreteType(name, genericType, typeArguments, typeArgsInOrder) {
19263 this.genericType = genericType; 19324 this.genericType = genericType;
19264 this.typeArguments = typeArguments; 19325 this.typeArguments = typeArguments;
19265 this.typeArgsInOrder = typeArgsInOrder; 19326 this.typeArgsInOrder = typeArgsInOrder;
19266 this.constructors = $map([]); 19327 this.constructors = $map([]);
19267 this.members = $map([]); 19328 this.members = $map([]);
19268 this.factories = new FactoryMap(); 19329 this.factories = new FactoryMap();
19330 // Initializers done
19269 lang_Type.call(this, name); 19331 lang_Type.call(this, name);
19270 // Initializers done
19271 } 19332 }
19272 $inherits(ConcreteType, lang_Type); 19333 $inherits(ConcreteType, lang_Type);
19273 ConcreteType.prototype.is$ConcreteType = function(){return this;}; 19334 ConcreteType.prototype.is$ConcreteType = function(){return this;};
19274 ConcreteType.prototype.get$genericType = function() { return this.genericType; } ; 19335 ConcreteType.prototype.get$genericType = function() { return this.genericType; } ;
19275 ConcreteType.prototype.get$typeArgsInOrder = function() { return this.typeArgsIn Order; }; 19336 ConcreteType.prototype.get$typeArgsInOrder = function() { return this.typeArgsIn Order; };
19276 ConcreteType.prototype.set$typeArgsInOrder = function(value) { return this.typeA rgsInOrder = value; }; 19337 ConcreteType.prototype.set$typeArgsInOrder = function(value) { return this.typeA rgsInOrder = value; };
19277 ConcreteType.prototype.get$isList = function() { 19338 ConcreteType.prototype.get$isList = function() {
19278 return this.genericType.get$isList(); 19339 return this.genericType.get$isList();
19279 } 19340 }
19280 ConcreteType.prototype.get$isClass = function() { 19341 ConcreteType.prototype.get$isClass = function() {
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
19433 function DefinedType(name, library, definition, isClass) { 19494 function DefinedType(name, library, definition, isClass) {
19434 this.isUsed = false 19495 this.isUsed = false
19435 this.isNativeType = false 19496 this.isNativeType = false
19436 this.library = library; 19497 this.library = library;
19437 this.isClass = isClass; 19498 this.isClass = isClass;
19438 this.directSubtypes = new HashSetImplementation(); 19499 this.directSubtypes = new HashSetImplementation();
19439 this.constructors = $map([]); 19500 this.constructors = $map([]);
19440 this.members = $map([]); 19501 this.members = $map([]);
19441 this.factories = new FactoryMap(); 19502 this.factories = new FactoryMap();
19442 this._resolvedMembers = $map([]); 19503 this._resolvedMembers = $map([]);
19504 // Initializers done
19443 lang_Type.call(this, name); 19505 lang_Type.call(this, name);
19444 // Initializers done
19445 this.setDefinition(definition); 19506 this.setDefinition(definition);
19446 } 19507 }
19447 $inherits(DefinedType, lang_Type); 19508 $inherits(DefinedType, lang_Type);
19448 DefinedType.prototype.is$DefinedType = function(){return this;}; 19509 DefinedType.prototype.is$DefinedType = function(){return this;};
19449 DefinedType.prototype.get$definition = function() { return this.definition; }; 19510 DefinedType.prototype.get$definition = function() { return this.definition; };
19450 DefinedType.prototype.set$definition = function(value) { return this.definition = value; }; 19511 DefinedType.prototype.set$definition = function(value) { return this.definition = value; };
19451 DefinedType.prototype.get$library = function() { return this.library; }; 19512 DefinedType.prototype.get$library = function() { return this.library; };
19452 DefinedType.prototype.get$isClass = function() { return this.isClass; }; 19513 DefinedType.prototype.get$isClass = function() { return this.isClass; };
19453 DefinedType.prototype.get$parent = function() { 19514 DefinedType.prototype.get$parent = function() {
19454 return this._parent; 19515 return this._parent;
(...skipping 1029 matching lines...) Expand 10 before | Expand all | Expand 10 after
20484 return this.needsConversion(($0 && $0.is$lang_Type())); 20545 return this.needsConversion(($0 && $0.is$lang_Type()));
20485 }; 20546 };
20486 Value.prototype.set_$4 = function($0, $1, $2, $3) { 20547 Value.prototype.set_$4 = function($0, $1, $2, $3) {
20487 return this.set_(($0 && $0.is$MethodGenerator()), $assert_String($1), ($2 && $ 2.is$lang_Node()), ($3 && $3.is$Value()), false); 20548 return this.set_(($0 && $0.is$MethodGenerator()), $assert_String($1), ($2 && $ 2.is$lang_Node()), ($3 && $3.is$Value()), false);
20488 }; 20549 };
20489 // ********** Code for EvaluatedValue ************** 20550 // ********** Code for EvaluatedValue **************
20490 function EvaluatedValue() {} 20551 function EvaluatedValue() {}
20491 EvaluatedValue._internal$ctor = function(type, actualValue, canonicalCode, span, code) { 20552 EvaluatedValue._internal$ctor = function(type, actualValue, canonicalCode, span, code) {
20492 this.actualValue = actualValue; 20553 this.actualValue = actualValue;
20493 this.canonicalCode = canonicalCode; 20554 this.canonicalCode = canonicalCode;
20555 // Initializers done
20494 Value.call(this, type, code, span, false); 20556 Value.call(this, type, code, span, false);
20495 // Initializers done
20496 } 20557 }
20497 EvaluatedValue._internal$ctor.prototype = EvaluatedValue.prototype; 20558 EvaluatedValue._internal$ctor.prototype = EvaluatedValue.prototype;
20498 $inherits(EvaluatedValue, Value); 20559 $inherits(EvaluatedValue, Value);
20499 EvaluatedValue.EvaluatedValue$factory = function(type, actualValue, canonicalCod e, span) { 20560 EvaluatedValue.EvaluatedValue$factory = function(type, actualValue, canonicalCod e, span) {
20500 return new EvaluatedValue._internal$ctor(type, actualValue, canonicalCode, spa n, EvaluatedValue.codeWithComments(canonicalCode, span)); 20561 return new EvaluatedValue._internal$ctor(type, actualValue, canonicalCode, spa n, EvaluatedValue.codeWithComments(canonicalCode, span));
20501 } 20562 }
20502 EvaluatedValue.prototype.get$actualValue = function() { return this.actualValue; }; 20563 EvaluatedValue.prototype.get$actualValue = function() { return this.actualValue; };
20503 EvaluatedValue.prototype.set$actualValue = function(value) { return this.actualV alue = value; }; 20564 EvaluatedValue.prototype.set$actualValue = function(value) { return this.actualV alue = value; };
20504 EvaluatedValue.prototype.get$isConst = function() { 20565 EvaluatedValue.prototype.get$isConst = function() {
20505 return true; 20566 return true;
20506 } 20567 }
20507 EvaluatedValue.prototype.get$canonicalCode = function() { return this.canonicalC ode; }; 20568 EvaluatedValue.prototype.get$canonicalCode = function() { return this.canonicalC ode; };
20508 EvaluatedValue.prototype.set$canonicalCode = function(value) { return this.canon icalCode = value; }; 20569 EvaluatedValue.prototype.set$canonicalCode = function(value) { return this.canon icalCode = value; };
20509 EvaluatedValue.codeWithComments = function(canonicalCode, span) { 20570 EvaluatedValue.codeWithComments = function(canonicalCode, span) {
20510 return (span != null && span.get$text() != canonicalCode) ? ('' + canonicalCod e + '/*' + span.get$text() + '*/') : canonicalCode; 20571 return (span != null && span.get$text() != canonicalCode) ? ('' + canonicalCod e + '/*' + span.get$text() + '*/') : canonicalCode;
20511 } 20572 }
20512 // ********** Code for ConstListValue ************** 20573 // ********** Code for ConstListValue **************
20513 function ConstListValue() {} 20574 function ConstListValue() {}
20514 ConstListValue._internal$ctor = function(type, values, actualValue, canonicalCod e, span, code) { 20575 ConstListValue._internal$ctor = function(type, values, actualValue, canonicalCod e, span, code) {
20515 this.values = values; 20576 this.values = values;
20577 // Initializers done
20516 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code)); 20578 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code));
20517 // Initializers done
20518 } 20579 }
20519 ConstListValue._internal$ctor.prototype = ConstListValue.prototype; 20580 ConstListValue._internal$ctor.prototype = ConstListValue.prototype;
20520 $inherits(ConstListValue, EvaluatedValue); 20581 $inherits(ConstListValue, EvaluatedValue);
20521 ConstListValue.ConstListValue$factory = function(type, values, actualValue, cano nicalCode, span) { 20582 ConstListValue.ConstListValue$factory = function(type, values, actualValue, cano nicalCode, span) {
20522 return new ConstListValue._internal$ctor(type, values, actualValue, canonicalC ode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); 20583 return new ConstListValue._internal$ctor(type, values, actualValue, canonicalC ode, span, EvaluatedValue.codeWithComments(canonicalCode, span));
20523 } 20584 }
20524 // ********** Code for ConstMapValue ************** 20585 // ********** Code for ConstMapValue **************
20525 function ConstMapValue() {} 20586 function ConstMapValue() {}
20526 ConstMapValue._internal$ctor = function(type, values, actualValue, canonicalCode , span, code) { 20587 ConstMapValue._internal$ctor = function(type, values, actualValue, canonicalCode , span, code) {
20527 this.values = values; 20588 this.values = values;
20589 // Initializers done
20528 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code)); 20590 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code));
20529 // Initializers done
20530 } 20591 }
20531 ConstMapValue._internal$ctor.prototype = ConstMapValue.prototype; 20592 ConstMapValue._internal$ctor.prototype = ConstMapValue.prototype;
20532 $inherits(ConstMapValue, EvaluatedValue); 20593 $inherits(ConstMapValue, EvaluatedValue);
20533 ConstMapValue.ConstMapValue$factory = function(type, keyValuePairs, actualValue, canonicalCode, span) { 20594 ConstMapValue.ConstMapValue$factory = function(type, keyValuePairs, actualValue, canonicalCode, span) {
20534 var values = new HashMapImplementation(); 20595 var values = new HashMapImplementation();
20535 for (var i = 0; 20596 for (var i = 0;
20536 i < keyValuePairs.length; i += 2) { 20597 i < keyValuePairs.length; i += 2) {
20537 values.$setindex(keyValuePairs.$index(i).get$actualValue(), keyValuePairs.$i ndex(i + 1)); 20598 values.$setindex(keyValuePairs.$index(i).get$actualValue(), keyValuePairs.$i ndex(i + 1));
20538 } 20599 }
20539 return new ConstMapValue._internal$ctor(type, values, actualValue, canonicalCo de, span, EvaluatedValue.codeWithComments(canonicalCode, span)); 20600 return new ConstMapValue._internal$ctor(type, values, actualValue, canonicalCo de, span, EvaluatedValue.codeWithComments(canonicalCode, span));
20540 } 20601 }
20541 // ********** Code for ConstObjectValue ************** 20602 // ********** Code for ConstObjectValue **************
20542 function ConstObjectValue() {} 20603 function ConstObjectValue() {}
20543 ConstObjectValue._internal$ctor = function(type, fields, actualValue, canonicalC ode, span, code) { 20604 ConstObjectValue._internal$ctor = function(type, fields, actualValue, canonicalC ode, span, code) {
20544 this.fields = fields; 20605 this.fields = fields;
20606 // Initializers done
20545 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code)); 20607 EvaluatedValue._internal$ctor.call(this, (type && type.is$lang_Type()), actual Value, canonicalCode, (span && span.is$SourceSpan()), $assert_String(code));
20546 // Initializers done
20547 } 20608 }
20548 ConstObjectValue._internal$ctor.prototype = ConstObjectValue.prototype; 20609 ConstObjectValue._internal$ctor.prototype = ConstObjectValue.prototype;
20549 $inherits(ConstObjectValue, EvaluatedValue); 20610 $inherits(ConstObjectValue, EvaluatedValue);
20550 ConstObjectValue.ConstObjectValue$factory = function(type, fields, canonicalCode , span) { 20611 ConstObjectValue.ConstObjectValue$factory = function(type, fields, canonicalCode , span) {
20551 var fieldValues = []; 20612 var fieldValues = [];
20552 var $list = fields.getKeys(); 20613 var $list = fields.getKeys();
20553 for (var $i = fields.getKeys().iterator$0(); $i.hasNext$0(); ) { 20614 for (var $i = fields.getKeys().iterator$0(); $i.hasNext$0(); ) {
20554 var f = $i.next$0(); 20615 var f = $i.next$0();
20555 fieldValues.add(('' + f + ' = ' + fields.$index(f).get$actualValue() + '')); 20616 fieldValues.add(('' + f + ' = ' + fields.$index(f).get$actualValue() + ''));
20556 } 20617 }
20557 fieldValues.sort((function (a, b) { 20618 fieldValues.sort((function (a, b) {
20558 return a.compareTo$1(b); 20619 return a.compareTo$1(b);
20559 }) 20620 })
20560 ); 20621 );
20561 var actualValue = ('const ' + type.get$jsname() + ' [') + Strings.join(fieldVa lues, ',') + ']'; 20622 var actualValue = ('const ' + type.get$jsname() + ' [') + Strings.join(fieldVa lues, ',') + ']';
20562 return new ConstObjectValue._internal$ctor(type, fields, actualValue, canonica lCode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); 20623 return new ConstObjectValue._internal$ctor(type, fields, actualValue, canonica lCode, span, EvaluatedValue.codeWithComments(canonicalCode, span));
20563 } 20624 }
20564 // ********** Code for GlobalValue ************** 20625 // ********** Code for GlobalValue **************
20565 function GlobalValue(type, code, isConst, field, name, exp, canonicalCode, span, dependencies) { 20626 function GlobalValue(type, code, isConst, field, name, exp, canonicalCode, span, dependencies) {
20566 this.field = field; 20627 this.field = field;
20567 this.name = name; 20628 this.name = name;
20568 this.exp = exp; 20629 this.exp = exp;
20569 this.canonicalCode = canonicalCode; 20630 this.canonicalCode = canonicalCode;
20570 this.dependencies = dependencies; 20631 this.dependencies = dependencies;
20632 // Initializers done
20571 Value.call(this, type, code, span, !$notnull_bool(isConst)); 20633 Value.call(this, type, code, span, !$notnull_bool(isConst));
20572 // Initializers done
20573 } 20634 }
20574 $inherits(GlobalValue, Value); 20635 $inherits(GlobalValue, Value);
20575 GlobalValue.prototype.is$GlobalValue = function(){return this;}; 20636 GlobalValue.prototype.is$GlobalValue = function(){return this;};
20576 GlobalValue.prototype.is$Comparable = function(){return this;}; 20637 GlobalValue.prototype.is$Comparable = function(){return this;};
20577 GlobalValue.GlobalValue$fromStatic$factory = function(field, exp, dependencies) { 20638 GlobalValue.GlobalValue$fromStatic$factory = function(field, exp, dependencies) {
20578 var code = ($notnull_bool(exp.get$isConst()) ? exp.get$canonicalCode() : exp.c ode); 20639 var code = ($notnull_bool(exp.get$isConst()) ? exp.get$canonicalCode() : exp.c ode);
20579 var codeWithComment = ('' + code + '/*' + field.declaringType.name + '.' + fie ld.get$name() + '*/'); 20640 var codeWithComment = ('' + code + '/*' + field.declaringType.name + '.' + fie ld.get$name() + '*/');
20580 return new GlobalValue(exp.type, $assert_String(codeWithComment), field.isFina l, field, null, exp, code, exp.span, dependencies.filter$1((function (d) { 20641 return new GlobalValue(exp.type, $assert_String(codeWithComment), field.isFina l, field, null, exp, code, exp.span, dependencies.filter$1((function (d) {
20581 return (d instanceof GlobalValue); 20642 return (d instanceof GlobalValue);
20582 }) 20643 })
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
20628 else { 20689 else {
20629 return this.field.name.compareTo(other.field.name); 20690 return this.field.name.compareTo(other.field.name);
20630 } 20691 }
20631 } 20692 }
20632 GlobalValue.prototype.compareTo$1 = function($0) { 20693 GlobalValue.prototype.compareTo$1 = function($0) {
20633 return this.compareTo(($0 && $0.is$GlobalValue())); 20694 return this.compareTo(($0 && $0.is$GlobalValue()));
20634 }; 20695 };
20635 // ********** Code for BareValue ************** 20696 // ********** Code for BareValue **************
20636 function BareValue(home, outermost, span) { 20697 function BareValue(home, outermost, span) {
20637 this.home = home; 20698 this.home = home;
20699 // Initializers done
20638 Value.call(this, outermost.method.declaringType, null, span, false); 20700 Value.call(this, outermost.method.declaringType, null, span, false);
20639 // Initializers done
20640 this.isType = outermost.get$isStatic(); 20701 this.isType = outermost.get$isStatic();
20641 } 20702 }
20642 $inherits(BareValue, Value); 20703 $inherits(BareValue, Value);
20643 BareValue.prototype._tryResolveMember = function(context, name) { 20704 BareValue.prototype._tryResolveMember = function(context, name) {
20644 $assert($eq(context, this.home), "context == home", "value.dart", 685, 12); 20705 $assert($eq(context, this.home), "context == home", "value.dart", 685, 12);
20645 var member = this.type.resolveMember(name); 20706 var member = this.type.resolveMember(name);
20646 if ($notnull_bool($ne(member, null))) { 20707 if ($notnull_bool($ne(member, null))) {
20647 $assert(this.code == null, "code == null", "value.dart", 690, 14); 20708 $assert(this.code == null, "code == null", "value.dart", 690, 14);
20648 if ($notnull_bool(this.isType)) { 20709 if ($notnull_bool(this.isType)) {
20649 this.code = this.type.get$jsname(); 20710 this.code = this.type.get$jsname();
(...skipping 491 matching lines...) Expand 10 before | Expand all | Expand 10 after
21141 } 21202 }
21142 VarMember.prototype.generate$1 = function($0) { 21203 VarMember.prototype.generate$1 = function($0) {
21143 return this.generate(($0 && $0.is$CodeWriter())); 21204 return this.generate(($0 && $0.is$CodeWriter()));
21144 }; 21205 };
21145 VarMember.prototype.invoke$4 = function($0, $1, $2, $3) { 21206 VarMember.prototype.invoke$4 = function($0, $1, $2, $3) {
21146 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), ($2 && $2.is$Value()), ($3 && $3.is$Arguments())); 21207 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), ($2 && $2.is$Value()), ($3 && $3.is$Arguments()));
21147 }; 21208 };
21148 // ********** Code for VarFunctionStub ************** 21209 // ********** Code for VarFunctionStub **************
21149 function VarFunctionStub(name, callArgs) { 21210 function VarFunctionStub(name, callArgs) {
21150 this.args = callArgs.toCallStubArgs(); 21211 this.args = callArgs.toCallStubArgs();
21212 // Initializers done
21151 VarMember.call(this, name); 21213 VarMember.call(this, name);
21152 // Initializers done
21153 world.gen.corejs.useGenStub = true; 21214 world.gen.corejs.useGenStub = true;
21154 } 21215 }
21155 $inherits(VarFunctionStub, VarMember); 21216 $inherits(VarFunctionStub, VarMember);
21156 VarFunctionStub.prototype.is$VarFunctionStub = function(){return this;}; 21217 VarFunctionStub.prototype.is$VarFunctionStub = function(){return this;};
21157 VarFunctionStub.prototype.generate = function(code) { 21218 VarFunctionStub.prototype.generate = function(code) {
21158 if ($notnull_bool(this.args.get$hasNames())) { 21219 if ($notnull_bool(this.args.get$hasNames())) {
21159 this.generateNamed(code); 21220 this.generateNamed(code);
21160 } 21221 }
21161 else { 21222 else {
21162 this.generatePositional(code); 21223 this.generatePositional(code);
(...skipping 21 matching lines...) Expand all
21184 w.exitBlock('}'); 21245 w.exitBlock('}');
21185 } 21246 }
21186 VarFunctionStub.prototype.generate$1 = function($0) { 21247 VarFunctionStub.prototype.generate$1 = function($0) {
21187 return this.generate(($0 && $0.is$CodeWriter())); 21248 return this.generate(($0 && $0.is$CodeWriter()));
21188 }; 21249 };
21189 // ********** Code for VarMethodStub ************** 21250 // ********** Code for VarMethodStub **************
21190 function VarMethodStub(name, member, args, body) { 21251 function VarMethodStub(name, member, args, body) {
21191 this.member = member; 21252 this.member = member;
21192 this.args = args; 21253 this.args = args;
21193 this.body = body; 21254 this.body = body;
21255 // Initializers done
21194 VarMember.call(this, name); 21256 VarMember.call(this, name);
21195 // Initializers done
21196 } 21257 }
21197 $inherits(VarMethodStub, VarMember); 21258 $inherits(VarMethodStub, VarMember);
21198 VarMethodStub.prototype.get$returnType = function() { 21259 VarMethodStub.prototype.get$returnType = function() {
21199 var $0; 21260 var $0;
21200 return (($0 = this.member != null ? this.member.get$returnType() : world.varTy pe) && $0.is$lang_Type()); 21261 return (($0 = this.member != null ? this.member.get$returnType() : world.varTy pe) && $0.is$lang_Type());
21201 } 21262 }
21202 VarMethodStub.prototype.get$typeName = function() { 21263 VarMethodStub.prototype.get$typeName = function() {
21203 return this.member != null ? this.member.declaringType.get$jsname() : 'Object' ; 21264 return this.member != null ? this.member.declaringType.get$jsname() : 'Object' ;
21204 } 21265 }
21205 VarMethodStub.prototype.generate = function(code) { 21266 VarMethodStub.prototype.generate = function(code) {
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
21238 return this.generate(($0 && $0.is$CodeWriter())); 21299 return this.generate(($0 && $0.is$CodeWriter()));
21239 }; 21300 };
21240 VarMethodStub.prototype.generateBody$2 = function($0, $1) { 21301 VarMethodStub.prototype.generateBody$2 = function($0, $1) {
21241 return this.generateBody(($0 && $0.is$CodeWriter()), $assert_String($1)); 21302 return this.generateBody(($0 && $0.is$CodeWriter()), $assert_String($1));
21242 }; 21303 };
21243 // ********** Code for VarMethodSet ************** 21304 // ********** Code for VarMethodSet **************
21244 function VarMethodSet(name, members, callArgs, returnType) { 21305 function VarMethodSet(name, members, callArgs, returnType) {
21245 this.members = members; 21306 this.members = members;
21246 this.returnType = returnType; 21307 this.returnType = returnType;
21247 this.args = callArgs.toCallStubArgs(); 21308 this.args = callArgs.toCallStubArgs();
21309 // Initializers done
21248 VarMember.call(this, name); 21310 VarMember.call(this, name);
21249 // Initializers done
21250 } 21311 }
21251 $inherits(VarMethodSet, VarMember); 21312 $inherits(VarMethodSet, VarMember);
21252 VarMethodSet.prototype.get$members = function() { return this.members; }; 21313 VarMethodSet.prototype.get$members = function() { return this.members; };
21253 VarMethodSet.prototype.get$returnType = function() { return this.returnType; }; 21314 VarMethodSet.prototype.get$returnType = function() { return this.returnType; };
21254 VarMethodSet.prototype.get$baseName = function() { 21315 VarMethodSet.prototype.get$baseName = function() {
21255 return $assert_String(this.members.$index(0).get$name()); 21316 return $assert_String(this.members.$index(0).get$name());
21256 } 21317 }
21257 VarMethodSet.prototype.invoke = function(context, node, target, args) { 21318 VarMethodSet.prototype.invoke = function(context, node, target, args) {
21258 this._invokeMembers(context, node); 21319 this._invokeMembers(context, node);
21259 return VarMember.prototype.invoke.call(this, context, node, target, args); 21320 return VarMember.prototype.invoke.call(this, context, node, target, args);
(...skipping 480 matching lines...) Expand 10 before | Expand all | Expand 10 after
21740 INTERFACE, 21801 INTERFACE,
21741 LIBRARY, 21802 LIBRARY,
21742 NATIVE, 21803 NATIVE,
21743 NEGATE, 21804 NEGATE,
21744 OPERATOR, 21805 OPERATOR,
21745 SET, 21806 SET,
21746 SOURCE, 21807 SOURCE,
21747 STATIC, 21808 STATIC,
21748 TYPEDEF ]*/; 21809 TYPEDEF ]*/;
21749 main(); 21810 main();
OLDNEW
« no previous file with comments | « no previous file | frog/gen.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698