| OLD | NEW |
| 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) { return this($0, $1, true, capture); } | 7 * function($0, $1, capture) { return 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 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 } | 117 } |
| 118 function $truncdiv(x, y) { | 118 function $truncdiv(x, y) { |
| 119 if (typeof(x) == 'number' && typeof(y) == 'number') { | 119 if (typeof(x) == 'number' && typeof(y) == 'number') { |
| 120 if (y == 0) $throw(new IntegerDivisionByZeroException()); | 120 if (y == 0) $throw(new IntegerDivisionByZeroException()); |
| 121 var tmp = x / y; | 121 var tmp = x / y; |
| 122 return (tmp < 0) ? Math.ceil(tmp) : Math.floor(tmp); | 122 return (tmp < 0) ? Math.ceil(tmp) : Math.floor(tmp); |
| 123 } else { | 123 } else { |
| 124 return x.$truncdiv(y); | 124 return x.$truncdiv(y); |
| 125 } | 125 } |
| 126 } | 126 } |
| 127 // ********** Code for Clock ************** | |
| 128 function Clock() {} | |
| 129 Clock.now = function() { | |
| 130 return new Date().getTime(); | |
| 131 } | |
| 132 Clock.frequency = function() { | |
| 133 return 1000; | |
| 134 } | |
| 135 // ********** Code for Object ************** | 127 // ********** Code for Object ************** |
| 136 Object.prototype.get$dynamic = function() { | 128 Object.prototype.get$dynamic = function() { |
| 137 return this; | 129 return this; |
| 138 } | 130 } |
| 139 Object.prototype.noSuchMethod = function(name, args) { | 131 Object.prototype.noSuchMethod = function(name, args) { |
| 140 $throw(new NoSuchMethodException(this, name, args)); | 132 $throw(new NoSuchMethodException(this, name, args)); |
| 141 } | 133 } |
| 142 Object.prototype._checkExtends$0 = function() { | 134 Object.prototype._checkExtends$0 = function() { |
| 143 return this.noSuchMethod("_checkExtends", []); | 135 return this.noSuchMethod("_checkExtends", []); |
| 144 }; | 136 }; |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 }; | 370 }; |
| 379 Object.prototype.visitPostfixExpression$1 = function($0) { | 371 Object.prototype.visitPostfixExpression$1 = function($0) { |
| 380 return this.noSuchMethod("visitPostfixExpression", [$0]); | 372 return this.noSuchMethod("visitPostfixExpression", [$0]); |
| 381 }; | 373 }; |
| 382 Object.prototype.visitSources$0 = function() { | 374 Object.prototype.visitSources$0 = function() { |
| 383 return this.noSuchMethod("visitSources", []); | 375 return this.noSuchMethod("visitSources", []); |
| 384 }; | 376 }; |
| 385 Object.prototype.writeDefinition$2 = function($0, $1) { | 377 Object.prototype.writeDefinition$2 = function($0, $1) { |
| 386 return this.noSuchMethod("writeDefinition", [$0, $1]); | 378 return this.noSuchMethod("writeDefinition", [$0, $1]); |
| 387 }; | 379 }; |
| 380 // ********** Code for Clock ************** |
| 381 function Clock() {} |
| 382 Clock.now = function() { |
| 383 return new Date().getTime(); |
| 384 } |
| 385 Clock.frequency = function() { |
| 386 return 1000; |
| 387 } |
| 388 // ********** Code for NoSuchMethodException ************** | 388 // ********** Code for NoSuchMethodException ************** |
| 389 function NoSuchMethodException(_receiver, _functionName, _arguments) { | 389 function NoSuchMethodException(_receiver, _functionName, _arguments) { |
| 390 this._receiver = _receiver; | 390 this._receiver = _receiver; |
| 391 this._functionName = _functionName; | 391 this._functionName = _functionName; |
| 392 this._arguments = _arguments; | 392 this._arguments = _arguments; |
| 393 // Initializers done | 393 // Initializers done |
| 394 } | 394 } |
| 395 NoSuchMethodException.prototype.toString = function() { | 395 NoSuchMethodException.prototype.toString = function() { |
| 396 var sb = new StringBufferImpl(""); | 396 var sb = new StringBufferImpl(""); |
| 397 for (var i = 0; | 397 for (var i = 0; |
| (...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 641 ListFactory.prototype.sort$1 = function($0) { | 641 ListFactory.prototype.sort$1 = function($0) { |
| 642 return this.sort(to$call$2($0)); | 642 return this.sort(to$call$2($0)); |
| 643 }; | 643 }; |
| 644 ListFactory_E = ListFactory; | 644 ListFactory_E = ListFactory; |
| 645 ListFactory_K = ListFactory; | 645 ListFactory_K = ListFactory; |
| 646 ListFactory_String = ListFactory; | 646 ListFactory_String = ListFactory; |
| 647 ListFactory_V = ListFactory; | 647 ListFactory_V = ListFactory; |
| 648 // ********** Code for ListIterator ************** | 648 // ********** Code for ListIterator ************** |
| 649 function ListIterator(array) { | 649 function ListIterator(array) { |
| 650 this._array = array; | 650 this._array = array; |
| 651 this._dart_coreimpl_pos = 0; | 651 this._pos = 0; |
| 652 // Initializers done | 652 // Initializers done |
| 653 } | 653 } |
| 654 ListIterator.prototype.hasNext = function() { | 654 ListIterator.prototype.hasNext = function() { |
| 655 return this._array.length > this._dart_coreimpl_pos; | 655 return this._array.length > this._pos; |
| 656 } | 656 } |
| 657 ListIterator.prototype.next = function() { | 657 ListIterator.prototype.next = function() { |
| 658 if (!this.hasNext()) { | 658 if (!this.hasNext()) { |
| 659 $throw(const$0/*const NoMoreElementsException()*/); | 659 $throw(const$0/*const NoMoreElementsException()*/); |
| 660 } | 660 } |
| 661 return this._array.$index(this._dart_coreimpl_pos++); | 661 return this._array.$index(this._pos++); |
| 662 } | 662 } |
| 663 ListIterator.prototype.hasNext$0 = ListIterator.prototype.hasNext; | 663 ListIterator.prototype.hasNext$0 = ListIterator.prototype.hasNext; |
| 664 ListIterator.prototype.next$0 = ListIterator.prototype.next; | 664 ListIterator.prototype.next$0 = ListIterator.prototype.next; |
| 665 // ********** Code for NumImplementation ************** | 665 // ********** Code for NumImplementation ************** |
| 666 NumImplementation = Number; | 666 NumImplementation = Number; |
| 667 NumImplementation.prototype.isNaN = function() { | 667 NumImplementation.prototype.isNaN = function() { |
| 668 return isNaN(this); | 668 return isNaN(this); |
| 669 } | 669 } |
| 670 NumImplementation.prototype.isNegative = function() { | 670 NumImplementation.prototype.isNegative = function() { |
| 671 return this == 0 ? (1 / this) < 0 : this < 0; | 671 return this == 0 ? (1 / this) < 0 : this < 0; |
| (...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 875 return (this._probeForLookup(key) != -1); | 875 return (this._probeForLookup(key) != -1); |
| 876 } | 876 } |
| 877 HashMapImplementation.prototype.containsKey$1 = HashMapImplementation.prototype.
containsKey; | 877 HashMapImplementation.prototype.containsKey$1 = HashMapImplementation.prototype.
containsKey; |
| 878 HashMapImplementation.prototype.forEach$1 = function($0) { | 878 HashMapImplementation.prototype.forEach$1 = function($0) { |
| 879 return this.forEach(to$call$2($0)); | 879 return this.forEach(to$call$2($0)); |
| 880 }; | 880 }; |
| 881 HashMapImplementation.prototype.getKeys$0 = HashMapImplementation.prototype.getK
eys; | 881 HashMapImplementation.prototype.getKeys$0 = HashMapImplementation.prototype.getK
eys; |
| 882 HashMapImplementation.prototype.getValues$0 = HashMapImplementation.prototype.ge
tValues; | 882 HashMapImplementation.prototype.getValues$0 = HashMapImplementation.prototype.ge
tValues; |
| 883 HashMapImplementation.prototype.isEmpty$0 = HashMapImplementation.prototype.isEm
pty; | 883 HashMapImplementation.prototype.isEmpty$0 = HashMapImplementation.prototype.isEm
pty; |
| 884 // ********** Code for HashMapImplementation_E$E ************** | 884 // ********** Code for HashMapImplementation_E$E ************** |
| 885 function HashMapImplementation_E$E() { | |
| 886 // Initializers done | |
| 887 this._numberOfEntries = 0; | |
| 888 this._numberOfDeleted = 0; | |
| 889 this._loadLimit = HashMapImplementation._computeLoadLimit(8/*HashMapImplementa
tion._INITIAL_CAPACITY*/); | |
| 890 this._keys = new ListFactory(8/*HashMapImplementation._INITIAL_CAPACITY*/); | |
| 891 this._values = new ListFactory(8/*HashMapImplementation._INITIAL_CAPACITY*/); | |
| 892 } | |
| 893 /** Implements extends for Dart classes on JavaScript prototypes. */ | 885 /** Implements extends for Dart classes on JavaScript prototypes. */ |
| 894 function $inherits(child, parent) { | 886 function $inherits(child, parent) { |
| 895 if (child.prototype.__proto__) { | 887 if (child.prototype.__proto__) { |
| 896 child.prototype.__proto__ = parent.prototype; | 888 child.prototype.__proto__ = parent.prototype; |
| 897 } else { | 889 } else { |
| 898 function tmp() {}; | 890 function tmp() {}; |
| 899 tmp.prototype = parent.prototype; | 891 tmp.prototype = parent.prototype; |
| 900 child.prototype = new tmp(); | 892 child.prototype = new tmp(); |
| 901 child.prototype.constructor = child; | 893 child.prototype.constructor = child; |
| 902 } | 894 } |
| 903 } | 895 } |
| 904 $inherits(HashMapImplementation_E$E, HashMapImplementation); | 896 $inherits(HashMapImplementation_E$E, HashMapImplementation); |
| 897 function HashMapImplementation_E$E() { |
| 898 // Initializers done |
| 899 this._numberOfEntries = 0; |
| 900 this._numberOfDeleted = 0; |
| 901 this._loadLimit = HashMapImplementation._computeLoadLimit(8/*HashMapImplementa
tion._INITIAL_CAPACITY*/); |
| 902 this._keys = new ListFactory(8/*HashMapImplementation._INITIAL_CAPACITY*/); |
| 903 this._values = new ListFactory(8/*HashMapImplementation._INITIAL_CAPACITY*/); |
| 904 } |
| 905 HashMapImplementation_E$E._computeLoadLimit = function(capacity) { | 905 HashMapImplementation_E$E._computeLoadLimit = function(capacity) { |
| 906 return $truncdiv((capacity * 3), 4); | 906 return $truncdiv((capacity * 3), 4); |
| 907 } | 907 } |
| 908 HashMapImplementation_E$E._firstProbe = function(hashCode, length) { | 908 HashMapImplementation_E$E._firstProbe = function(hashCode, length) { |
| 909 return hashCode & (length - 1); | 909 return hashCode & (length - 1); |
| 910 } | 910 } |
| 911 HashMapImplementation_E$E._nextProbe = function(currentProbe, numberOfProbes, le
ngth) { | 911 HashMapImplementation_E$E._nextProbe = function(currentProbe, numberOfProbes, le
ngth) { |
| 912 return (currentProbe + numberOfProbes) & (length - 1); | 912 return (currentProbe + numberOfProbes) & (length - 1); |
| 913 } | 913 } |
| 914 HashMapImplementation_E$E.prototype._probeForAdding = function(key) { | 914 HashMapImplementation_E$E.prototype._probeForAdding = function(key) { |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1017 this.forEach(function _(key, value) { | 1017 this.forEach(function _(key, value) { |
| 1018 list.$setindex(i++, key); | 1018 list.$setindex(i++, key); |
| 1019 } | 1019 } |
| 1020 ); | 1020 ); |
| 1021 return list; | 1021 return list; |
| 1022 } | 1022 } |
| 1023 HashMapImplementation_E$E.prototype.containsKey = function(key) { | 1023 HashMapImplementation_E$E.prototype.containsKey = function(key) { |
| 1024 return (this._probeForLookup(key) != -1); | 1024 return (this._probeForLookup(key) != -1); |
| 1025 } | 1025 } |
| 1026 // ********** Code for HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePa
ir_K$V ************** | 1026 // ********** Code for HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePa
ir_K$V ************** |
| 1027 $inherits(HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePair_K$V, HashM
apImplementation); |
| 1027 function HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePair_K$V() {} | 1028 function HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePair_K$V() {} |
| 1028 $inherits(HashMapImplementation_K$DoubleLinkedQueueEntry_KeyValuePair_K$V, HashM
apImplementation); | |
| 1029 // ********** Code for HashMapImplementation_String$EvaluatedValue *************
* | 1029 // ********** Code for HashMapImplementation_String$EvaluatedValue *************
* |
| 1030 $inherits(HashMapImplementation_String$EvaluatedValue, HashMapImplementation); |
| 1030 function HashMapImplementation_String$EvaluatedValue() {} | 1031 function HashMapImplementation_String$EvaluatedValue() {} |
| 1031 $inherits(HashMapImplementation_String$EvaluatedValue, HashMapImplementation); | |
| 1032 // ********** Code for HashSetImplementation ************** | 1032 // ********** Code for HashSetImplementation ************** |
| 1033 function HashSetImplementation() { | 1033 function HashSetImplementation() { |
| 1034 // Initializers done | 1034 // Initializers done |
| 1035 this._backingMap = new HashMapImplementation_E$E(); | 1035 this._backingMap = new HashMapImplementation_E$E(); |
| 1036 } | 1036 } |
| 1037 HashSetImplementation.HashSetImplementation$from$factory = function(other) { | 1037 HashSetImplementation.HashSetImplementation$from$factory = function(other) { |
| 1038 var set = new HashSetImplementation(); | 1038 var set = new HashSetImplementation(); |
| 1039 for (var $$i = other.iterator(); $$i.hasNext$0(); ) { | 1039 for (var $$i = other.iterator(); $$i.hasNext$0(); ) { |
| 1040 var e = $$i.next$0(); | 1040 var e = $$i.next$0(); |
| 1041 set.add(e); | 1041 set.add(e); |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1105 }; | 1105 }; |
| 1106 HashSetImplementation.prototype.forEach$1 = function($0) { | 1106 HashSetImplementation.prototype.forEach$1 = function($0) { |
| 1107 return this.forEach(to$call$1($0)); | 1107 return this.forEach(to$call$1($0)); |
| 1108 }; | 1108 }; |
| 1109 HashSetImplementation.prototype.isEmpty$0 = HashSetImplementation.prototype.isEm
pty; | 1109 HashSetImplementation.prototype.isEmpty$0 = HashSetImplementation.prototype.isEm
pty; |
| 1110 HashSetImplementation.prototype.iterator$0 = HashSetImplementation.prototype.ite
rator; | 1110 HashSetImplementation.prototype.iterator$0 = HashSetImplementation.prototype.ite
rator; |
| 1111 HashSetImplementation.prototype.some$1 = function($0) { | 1111 HashSetImplementation.prototype.some$1 = function($0) { |
| 1112 return this.some(to$call$1($0)); | 1112 return this.some(to$call$1($0)); |
| 1113 }; | 1113 }; |
| 1114 // ********** Code for HashSetImplementation_E ************** | 1114 // ********** Code for HashSetImplementation_E ************** |
| 1115 $inherits(HashSetImplementation_E, HashSetImplementation); |
| 1115 function HashSetImplementation_E() {} | 1116 function HashSetImplementation_E() {} |
| 1116 $inherits(HashSetImplementation_E, HashSetImplementation); | |
| 1117 // ********** Code for HashSetImplementation_String ************** | 1117 // ********** Code for HashSetImplementation_String ************** |
| 1118 $inherits(HashSetImplementation_String, HashSetImplementation); |
| 1118 function HashSetImplementation_String() {} | 1119 function HashSetImplementation_String() {} |
| 1119 $inherits(HashSetImplementation_String, HashSetImplementation); | |
| 1120 // ********** Code for HashSetImplementation_Type ************** | 1120 // ********** Code for HashSetImplementation_Type ************** |
| 1121 $inherits(HashSetImplementation_Type, HashSetImplementation); |
| 1121 function HashSetImplementation_Type() {} | 1122 function HashSetImplementation_Type() {} |
| 1122 $inherits(HashSetImplementation_Type, HashSetImplementation); | |
| 1123 // ********** Code for HashSetIterator ************** | 1123 // ********** Code for HashSetIterator ************** |
| 1124 function HashSetIterator(set_) { | 1124 function HashSetIterator(set_) { |
| 1125 this._nextValidIndex = -1; | 1125 this._nextValidIndex = -1; |
| 1126 this._entries = set_._backingMap._keys; | 1126 this._entries = set_._backingMap._keys; |
| 1127 // Initializers done | 1127 // Initializers done |
| 1128 this._advance(); | 1128 this._advance(); |
| 1129 } | 1129 } |
| 1130 HashSetIterator.prototype.hasNext = function() { | 1130 HashSetIterator.prototype.hasNext = function() { |
| 1131 if (this._nextValidIndex >= this._entries.length) return false; | 1131 if (this._nextValidIndex >= this._entries.length) return false; |
| 1132 if (this._entries.$index(this._nextValidIndex) === const$3/*HashMapImplementat
ion._DELETED_KEY*/) { | 1132 if (this._entries.$index(this._nextValidIndex) === const$3/*HashMapImplementat
ion._DELETED_KEY*/) { |
| (...skipping 15 matching lines...) Expand all Loading... |
| 1148 var deletedKey = const$3/*HashMapImplementation._DELETED_KEY*/; | 1148 var deletedKey = const$3/*HashMapImplementation._DELETED_KEY*/; |
| 1149 do { | 1149 do { |
| 1150 if (++this._nextValidIndex >= length) break; | 1150 if (++this._nextValidIndex >= length) break; |
| 1151 entry = this._entries.$index(this._nextValidIndex); | 1151 entry = this._entries.$index(this._nextValidIndex); |
| 1152 } | 1152 } |
| 1153 while ((entry == null) || (entry === deletedKey)) | 1153 while ((entry == null) || (entry === deletedKey)) |
| 1154 } | 1154 } |
| 1155 HashSetIterator.prototype.hasNext$0 = HashSetIterator.prototype.hasNext; | 1155 HashSetIterator.prototype.hasNext$0 = HashSetIterator.prototype.hasNext; |
| 1156 HashSetIterator.prototype.next$0 = HashSetIterator.prototype.next; | 1156 HashSetIterator.prototype.next$0 = HashSetIterator.prototype.next; |
| 1157 // ********** Code for HashSetIterator_E ************** | 1157 // ********** Code for HashSetIterator_E ************** |
| 1158 $inherits(HashSetIterator_E, HashSetIterator); |
| 1158 function HashSetIterator_E(set_) { | 1159 function HashSetIterator_E(set_) { |
| 1159 this._nextValidIndex = -1; | 1160 this._nextValidIndex = -1; |
| 1160 this._entries = set_._backingMap._keys; | 1161 this._entries = set_._backingMap._keys; |
| 1161 // Initializers done | 1162 // Initializers done |
| 1162 this._advance(); | 1163 this._advance(); |
| 1163 } | 1164 } |
| 1164 $inherits(HashSetIterator_E, HashSetIterator); | |
| 1165 HashSetIterator_E.prototype._advance = function() { | 1165 HashSetIterator_E.prototype._advance = function() { |
| 1166 var length = this._entries.length; | 1166 var length = this._entries.length; |
| 1167 var entry; | 1167 var entry; |
| 1168 var deletedKey = const$3/*HashMapImplementation._DELETED_KEY*/; | 1168 var deletedKey = const$3/*HashMapImplementation._DELETED_KEY*/; |
| 1169 do { | 1169 do { |
| 1170 if (++this._nextValidIndex >= length) break; | 1170 if (++this._nextValidIndex >= length) break; |
| 1171 entry = this._entries.$index(this._nextValidIndex); | 1171 entry = this._entries.$index(this._nextValidIndex); |
| 1172 } | 1172 } |
| 1173 while ((entry == null) || (entry === deletedKey)) | 1173 while ((entry == null) || (entry === deletedKey)) |
| 1174 } | 1174 } |
| 1175 // ********** Code for _DeletedKeySentinel ************** | 1175 // ********** Code for _DeletedKeySentinel ************** |
| 1176 function _DeletedKeySentinel() { | 1176 function _DeletedKeySentinel() { |
| 1177 // Initializers done | 1177 // Initializers done |
| 1178 } | 1178 } |
| 1179 // ********** Code for KeyValuePair ************** | 1179 // ********** Code for KeyValuePair ************** |
| 1180 function KeyValuePair(key, value) { | 1180 function KeyValuePair(key, value) { |
| 1181 this.key = key; | 1181 this.key = key; |
| 1182 this.value = value; | 1182 this.value = value; |
| 1183 // Initializers done | 1183 // Initializers done |
| 1184 } | 1184 } |
| 1185 KeyValuePair.prototype.get$value = function() { return this.value; }; | 1185 KeyValuePair.prototype.get$value = function() { return this.value; }; |
| 1186 KeyValuePair.prototype.set$value = function(value) { return this.value = value;
}; | 1186 KeyValuePair.prototype.set$value = function(value) { return this.value = value;
}; |
| 1187 // ********** Code for KeyValuePair_K$V ************** | 1187 // ********** Code for KeyValuePair_K$V ************** |
| 1188 $inherits(KeyValuePair_K$V, KeyValuePair); |
| 1188 function KeyValuePair_K$V(key, value) { | 1189 function KeyValuePair_K$V(key, value) { |
| 1189 this.key = key; | 1190 this.key = key; |
| 1190 this.value = value; | 1191 this.value = value; |
| 1191 // Initializers done | 1192 // Initializers done |
| 1192 } | 1193 } |
| 1193 $inherits(KeyValuePair_K$V, KeyValuePair); | |
| 1194 // ********** Code for LinkedHashMapImplementation ************** | 1194 // ********** Code for LinkedHashMapImplementation ************** |
| 1195 function LinkedHashMapImplementation() { | 1195 function LinkedHashMapImplementation() { |
| 1196 // Initializers done | 1196 // Initializers done |
| 1197 this._map = new HashMapImplementation(); | 1197 this._map = new HashMapImplementation(); |
| 1198 this._list = new DoubleLinkedQueue_KeyValuePair_K$V(); | 1198 this._list = new DoubleLinkedQueue_KeyValuePair_K$V(); |
| 1199 } | 1199 } |
| 1200 LinkedHashMapImplementation.prototype.$setindex = function(key, value) { | 1200 LinkedHashMapImplementation.prototype.$setindex = function(key, value) { |
| 1201 if (this._map.containsKey(key)) { | 1201 if (this._map.containsKey(key)) { |
| 1202 this._map.$index(key).get$element().set$value(value); | 1202 this._map.$index(key).get$element().set$value(value); |
| 1203 } | 1203 } |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1278 DoubleLinkedQueueEntry.prototype._asNonSentinelEntry = function() { | 1278 DoubleLinkedQueueEntry.prototype._asNonSentinelEntry = function() { |
| 1279 return this; | 1279 return this; |
| 1280 } | 1280 } |
| 1281 DoubleLinkedQueueEntry.prototype.previousEntry = function() { | 1281 DoubleLinkedQueueEntry.prototype.previousEntry = function() { |
| 1282 return this._previous._asNonSentinelEntry(); | 1282 return this._previous._asNonSentinelEntry(); |
| 1283 } | 1283 } |
| 1284 DoubleLinkedQueueEntry.prototype.get$element = function() { | 1284 DoubleLinkedQueueEntry.prototype.get$element = function() { |
| 1285 return this._element; | 1285 return this._element; |
| 1286 } | 1286 } |
| 1287 // ********** Code for DoubleLinkedQueueEntry_E ************** | 1287 // ********** Code for DoubleLinkedQueueEntry_E ************** |
| 1288 $inherits(DoubleLinkedQueueEntry_E, DoubleLinkedQueueEntry); |
| 1288 function DoubleLinkedQueueEntry_E(e) { | 1289 function DoubleLinkedQueueEntry_E(e) { |
| 1289 // Initializers done | 1290 // Initializers done |
| 1290 this._element = e; | 1291 this._element = e; |
| 1291 } | 1292 } |
| 1292 $inherits(DoubleLinkedQueueEntry_E, DoubleLinkedQueueEntry); | |
| 1293 DoubleLinkedQueueEntry_E.prototype._link = function(p, n) { | 1293 DoubleLinkedQueueEntry_E.prototype._link = function(p, n) { |
| 1294 this._next = n; | 1294 this._next = n; |
| 1295 this._previous = p; | 1295 this._previous = p; |
| 1296 p._next = this; | 1296 p._next = this; |
| 1297 n._previous = this; | 1297 n._previous = this; |
| 1298 } | 1298 } |
| 1299 DoubleLinkedQueueEntry_E.prototype.prepend = function(e) { | 1299 DoubleLinkedQueueEntry_E.prototype.prepend = function(e) { |
| 1300 new DoubleLinkedQueueEntry_E(e)._link(this._previous, this); | 1300 new DoubleLinkedQueueEntry_E(e)._link(this._previous, this); |
| 1301 } | 1301 } |
| 1302 DoubleLinkedQueueEntry_E.prototype.remove = function() { | 1302 DoubleLinkedQueueEntry_E.prototype.remove = function() { |
| 1303 this._previous._next = this._next; | 1303 this._previous._next = this._next; |
| 1304 this._next._previous = this._previous; | 1304 this._next._previous = this._previous; |
| 1305 this._next = null; | 1305 this._next = null; |
| 1306 this._previous = null; | 1306 this._previous = null; |
| 1307 return this._element; | 1307 return this._element; |
| 1308 } | 1308 } |
| 1309 DoubleLinkedQueueEntry_E.prototype._asNonSentinelEntry = function() { | 1309 DoubleLinkedQueueEntry_E.prototype._asNonSentinelEntry = function() { |
| 1310 return this; | 1310 return this; |
| 1311 } | 1311 } |
| 1312 DoubleLinkedQueueEntry_E.prototype.previousEntry = function() { | 1312 DoubleLinkedQueueEntry_E.prototype.previousEntry = function() { |
| 1313 return this._previous._asNonSentinelEntry(); | 1313 return this._previous._asNonSentinelEntry(); |
| 1314 } | 1314 } |
| 1315 // ********** Code for DoubleLinkedQueueEntry_KeyValuePair_K$V ************** | 1315 // ********** Code for DoubleLinkedQueueEntry_KeyValuePair_K$V ************** |
| 1316 $inherits(DoubleLinkedQueueEntry_KeyValuePair_K$V, DoubleLinkedQueueEntry); |
| 1316 function DoubleLinkedQueueEntry_KeyValuePair_K$V(e) { | 1317 function DoubleLinkedQueueEntry_KeyValuePair_K$V(e) { |
| 1317 // Initializers done | 1318 // Initializers done |
| 1318 this._element = e; | 1319 this._element = e; |
| 1319 } | 1320 } |
| 1320 $inherits(DoubleLinkedQueueEntry_KeyValuePair_K$V, DoubleLinkedQueueEntry); | |
| 1321 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype._link = function(p, n) { | 1321 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype._link = function(p, n) { |
| 1322 this._next = n; | 1322 this._next = n; |
| 1323 this._previous = p; | 1323 this._previous = p; |
| 1324 p._next = this; | 1324 p._next = this; |
| 1325 n._previous = this; | 1325 n._previous = this; |
| 1326 } | 1326 } |
| 1327 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype.prepend = function(e) { | 1327 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype.prepend = function(e) { |
| 1328 new DoubleLinkedQueueEntry_KeyValuePair_K$V(e)._link(this._previous, this); | 1328 new DoubleLinkedQueueEntry_KeyValuePair_K$V(e)._link(this._previous, this); |
| 1329 } | 1329 } |
| 1330 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype._asNonSentinelEntry = function
() { | 1330 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype._asNonSentinelEntry = function
() { |
| 1331 return this; | 1331 return this; |
| 1332 } | 1332 } |
| 1333 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype.previousEntry = function() { | 1333 DoubleLinkedQueueEntry_KeyValuePair_K$V.prototype.previousEntry = function() { |
| 1334 return this._previous._asNonSentinelEntry(); | 1334 return this._previous._asNonSentinelEntry(); |
| 1335 } | 1335 } |
| 1336 // ********** Code for _DoubleLinkedQueueEntrySentinel ************** | 1336 // ********** Code for _DoubleLinkedQueueEntrySentinel ************** |
| 1337 $inherits(_DoubleLinkedQueueEntrySentinel, DoubleLinkedQueueEntry_E); |
| 1337 function _DoubleLinkedQueueEntrySentinel() { | 1338 function _DoubleLinkedQueueEntrySentinel() { |
| 1338 // Initializers done | 1339 // Initializers done |
| 1339 DoubleLinkedQueueEntry_E.call(this, null); | 1340 DoubleLinkedQueueEntry_E.call(this, null); |
| 1340 this._link(this, this); | 1341 this._link(this, this); |
| 1341 } | 1342 } |
| 1342 $inherits(_DoubleLinkedQueueEntrySentinel, DoubleLinkedQueueEntry_E); | |
| 1343 _DoubleLinkedQueueEntrySentinel.prototype.remove = function() { | 1343 _DoubleLinkedQueueEntrySentinel.prototype.remove = function() { |
| 1344 $throw(const$2/*const EmptyQueueException()*/); | 1344 $throw(const$2/*const EmptyQueueException()*/); |
| 1345 } | 1345 } |
| 1346 _DoubleLinkedQueueEntrySentinel.prototype._asNonSentinelEntry = function() { | 1346 _DoubleLinkedQueueEntrySentinel.prototype._asNonSentinelEntry = function() { |
| 1347 return null; | 1347 return null; |
| 1348 } | 1348 } |
| 1349 _DoubleLinkedQueueEntrySentinel.prototype.get$element = function() { | 1349 _DoubleLinkedQueueEntrySentinel.prototype.get$element = function() { |
| 1350 $throw(const$2/*const EmptyQueueException()*/); | 1350 $throw(const$2/*const EmptyQueueException()*/); |
| 1351 } | 1351 } |
| 1352 // ********** Code for _DoubleLinkedQueueEntrySentinel_E ************** | 1352 // ********** Code for _DoubleLinkedQueueEntrySentinel_E ************** |
| 1353 $inherits(_DoubleLinkedQueueEntrySentinel_E, _DoubleLinkedQueueEntrySentinel); |
| 1353 function _DoubleLinkedQueueEntrySentinel_E() { | 1354 function _DoubleLinkedQueueEntrySentinel_E() { |
| 1354 // Initializers done | 1355 // Initializers done |
| 1355 DoubleLinkedQueueEntry_E.call(this, null); | 1356 DoubleLinkedQueueEntry_E.call(this, null); |
| 1356 this._link(this, this); | 1357 this._link(this, this); |
| 1357 } | 1358 } |
| 1358 $inherits(_DoubleLinkedQueueEntrySentinel_E, _DoubleLinkedQueueEntrySentinel); | |
| 1359 // ********** Code for _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V ********
****** | 1359 // ********** Code for _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V ********
****** |
| 1360 $inherits(_DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V, _DoubleLinkedQueueEn
trySentinel); |
| 1360 function _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V() { | 1361 function _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V() { |
| 1361 // Initializers done | 1362 // Initializers done |
| 1362 DoubleLinkedQueueEntry_KeyValuePair_K$V.call(this, null); | 1363 DoubleLinkedQueueEntry_KeyValuePair_K$V.call(this, null); |
| 1363 this._link(this, this); | 1364 this._link(this, this); |
| 1364 } | 1365 } |
| 1365 $inherits(_DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V, _DoubleLinkedQueueEn
trySentinel); | |
| 1366 // ********** Code for DoubleLinkedQueue ************** | 1366 // ********** Code for DoubleLinkedQueue ************** |
| 1367 function DoubleLinkedQueue() { | 1367 function DoubleLinkedQueue() { |
| 1368 // Initializers done | 1368 // Initializers done |
| 1369 this._sentinel = new _DoubleLinkedQueueEntrySentinel_E(); | 1369 this._sentinel = new _DoubleLinkedQueueEntrySentinel_E(); |
| 1370 } | 1370 } |
| 1371 DoubleLinkedQueue.prototype.addLast = function(value) { | 1371 DoubleLinkedQueue.prototype.addLast = function(value) { |
| 1372 this._sentinel.prepend(value); | 1372 this._sentinel.prepend(value); |
| 1373 } | 1373 } |
| 1374 DoubleLinkedQueue.prototype.add = function(value) { | 1374 DoubleLinkedQueue.prototype.add = function(value) { |
| 1375 this.addLast(value); | 1375 this.addLast(value); |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1454 return this.forEach(to$call$1($0)); | 1454 return this.forEach(to$call$1($0)); |
| 1455 }; | 1455 }; |
| 1456 DoubleLinkedQueue.prototype.isEmpty$0 = DoubleLinkedQueue.prototype.isEmpty; | 1456 DoubleLinkedQueue.prototype.isEmpty$0 = DoubleLinkedQueue.prototype.isEmpty; |
| 1457 DoubleLinkedQueue.prototype.iterator$0 = DoubleLinkedQueue.prototype.iterator; | 1457 DoubleLinkedQueue.prototype.iterator$0 = DoubleLinkedQueue.prototype.iterator; |
| 1458 DoubleLinkedQueue.prototype.last$0 = DoubleLinkedQueue.prototype.last; | 1458 DoubleLinkedQueue.prototype.last$0 = DoubleLinkedQueue.prototype.last; |
| 1459 DoubleLinkedQueue.prototype.removeLast$0 = DoubleLinkedQueue.prototype.removeLas
t; | 1459 DoubleLinkedQueue.prototype.removeLast$0 = DoubleLinkedQueue.prototype.removeLas
t; |
| 1460 DoubleLinkedQueue.prototype.some$1 = function($0) { | 1460 DoubleLinkedQueue.prototype.some$1 = function($0) { |
| 1461 return this.some(to$call$1($0)); | 1461 return this.some(to$call$1($0)); |
| 1462 }; | 1462 }; |
| 1463 // ********** Code for DoubleLinkedQueue_E ************** | 1463 // ********** Code for DoubleLinkedQueue_E ************** |
| 1464 $inherits(DoubleLinkedQueue_E, DoubleLinkedQueue); |
| 1464 function DoubleLinkedQueue_E() {} | 1465 function DoubleLinkedQueue_E() {} |
| 1465 $inherits(DoubleLinkedQueue_E, DoubleLinkedQueue); | |
| 1466 // ********** Code for DoubleLinkedQueue_KeyValuePair_K$V ************** | 1466 // ********** Code for DoubleLinkedQueue_KeyValuePair_K$V ************** |
| 1467 $inherits(DoubleLinkedQueue_KeyValuePair_K$V, DoubleLinkedQueue); |
| 1467 function DoubleLinkedQueue_KeyValuePair_K$V() { | 1468 function DoubleLinkedQueue_KeyValuePair_K$V() { |
| 1468 // Initializers done | 1469 // Initializers done |
| 1469 this._sentinel = new _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V(); | 1470 this._sentinel = new _DoubleLinkedQueueEntrySentinel_KeyValuePair_K$V(); |
| 1470 } | 1471 } |
| 1471 $inherits(DoubleLinkedQueue_KeyValuePair_K$V, DoubleLinkedQueue); | |
| 1472 DoubleLinkedQueue_KeyValuePair_K$V.prototype.addLast = function(value) { | 1472 DoubleLinkedQueue_KeyValuePair_K$V.prototype.addLast = function(value) { |
| 1473 this._sentinel.prepend(value); | 1473 this._sentinel.prepend(value); |
| 1474 } | 1474 } |
| 1475 DoubleLinkedQueue_KeyValuePair_K$V.prototype.lastEntry = function() { | 1475 DoubleLinkedQueue_KeyValuePair_K$V.prototype.lastEntry = function() { |
| 1476 return this._sentinel.previousEntry(); | 1476 return this._sentinel.previousEntry(); |
| 1477 } | 1477 } |
| 1478 DoubleLinkedQueue_KeyValuePair_K$V.prototype.forEach = function(f) { | 1478 DoubleLinkedQueue_KeyValuePair_K$V.prototype.forEach = function(f) { |
| 1479 var entry = this._sentinel._next; | 1479 var entry = this._sentinel._next; |
| 1480 while (entry !== this._sentinel) { | 1480 while (entry !== this._sentinel) { |
| 1481 var nextEntry = entry._next; | 1481 var nextEntry = entry._next; |
| (...skipping 13 matching lines...) Expand all Loading... |
| 1495 _DoubleLinkedQueueIterator.prototype.next = function() { | 1495 _DoubleLinkedQueueIterator.prototype.next = function() { |
| 1496 if (!this.hasNext()) { | 1496 if (!this.hasNext()) { |
| 1497 $throw(const$0/*const NoMoreElementsException()*/); | 1497 $throw(const$0/*const NoMoreElementsException()*/); |
| 1498 } | 1498 } |
| 1499 this._currentEntry = this._currentEntry._next; | 1499 this._currentEntry = this._currentEntry._next; |
| 1500 return this._currentEntry.get$element(); | 1500 return this._currentEntry.get$element(); |
| 1501 } | 1501 } |
| 1502 _DoubleLinkedQueueIterator.prototype.hasNext$0 = _DoubleLinkedQueueIterator.prot
otype.hasNext; | 1502 _DoubleLinkedQueueIterator.prototype.hasNext$0 = _DoubleLinkedQueueIterator.prot
otype.hasNext; |
| 1503 _DoubleLinkedQueueIterator.prototype.next$0 = _DoubleLinkedQueueIterator.prototy
pe.next; | 1503 _DoubleLinkedQueueIterator.prototype.next$0 = _DoubleLinkedQueueIterator.prototy
pe.next; |
| 1504 // ********** Code for _DoubleLinkedQueueIterator_E ************** | 1504 // ********** Code for _DoubleLinkedQueueIterator_E ************** |
| 1505 $inherits(_DoubleLinkedQueueIterator_E, _DoubleLinkedQueueIterator); |
| 1505 function _DoubleLinkedQueueIterator_E(_sentinel) { | 1506 function _DoubleLinkedQueueIterator_E(_sentinel) { |
| 1506 this._sentinel = _sentinel; | 1507 this._sentinel = _sentinel; |
| 1507 // Initializers done | 1508 // Initializers done |
| 1508 this._currentEntry = this._sentinel; | 1509 this._currentEntry = this._sentinel; |
| 1509 } | 1510 } |
| 1510 $inherits(_DoubleLinkedQueueIterator_E, _DoubleLinkedQueueIterator); | |
| 1511 // ********** Code for StopwatchImplementation ************** | 1511 // ********** Code for StopwatchImplementation ************** |
| 1512 function StopwatchImplementation() { | 1512 function StopwatchImplementation() { |
| 1513 this._start = null; | 1513 this._start = null; |
| 1514 this._stop = null; | 1514 this._stop = null; |
| 1515 // Initializers done | 1515 // Initializers done |
| 1516 } | 1516 } |
| 1517 StopwatchImplementation.prototype.start = function() { | 1517 StopwatchImplementation.prototype.start = function() { |
| 1518 if (this._start == null) { | 1518 if (this._start == null) { |
| 1519 this._start = Clock.now(); | 1519 this._start = Clock.now(); |
| 1520 } | 1520 } |
| (...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2221 if (!isSubtype) { | 2221 if (!isSubtype) { |
| 2222 body = $globals.world.objectType.varStubs.$index(checkName).get$body(); | 2222 body = $globals.world.objectType.varStubs.$index(checkName).get$body(); |
| 2223 } | 2223 } |
| 2224 else if (onType.name == 'StringImplementation' || onType.name == 'NumImpleme
ntation') { | 2224 else if (onType.name == 'StringImplementation' || onType.name == 'NumImpleme
ntation') { |
| 2225 body = ('return ' + onType.get$nativeType().name + '(this)'); | 2225 body = ('return ' + onType.get$nativeType().name + '(this)'); |
| 2226 } | 2226 } |
| 2227 this.writer.writeln(this._prototypeOf(onType, checkName) + (' = function(){'
+ body + '};')); | 2227 this.writer.writeln(this._prototypeOf(onType, checkName) + (' = function(){'
+ body + '};')); |
| 2228 } | 2228 } |
| 2229 } | 2229 } |
| 2230 WorldGenerator.prototype.writeType = function(type) { | 2230 WorldGenerator.prototype.writeType = function(type) { |
| 2231 if (type.isWritten) return; |
| 2232 type.isWritten = true; |
| 2233 if (type.get$parent() != null && !type.get$isNative()) this.writeType(type.get
$parent()); |
| 2231 if (type.name != null && (type instanceof ConcreteType) && $eq(type.get$librar
y(), $globals.world.get$coreimpl()) && type.name.startsWith('ListFactory')) { | 2234 if (type.name != null && (type instanceof ConcreteType) && $eq(type.get$librar
y(), $globals.world.get$coreimpl()) && type.name.startsWith('ListFactory')) { |
| 2232 this.writer.writeln(('' + type.get$jsname() + ' = ' + type.get$genericType()
.get$jsname() + ';')); | 2235 this.writer.writeln(('' + type.get$jsname() + ' = ' + type.get$genericType()
.get$jsname() + ';')); |
| 2233 return; | 2236 return; |
| 2234 } | 2237 } |
| 2235 var typeName = type.get$jsname() != null ? type.get$jsname() : 'top level'; | 2238 var typeName = type.get$jsname() != null ? type.get$jsname() : 'top level'; |
| 2236 this.writer.comment(('// ********** Code for ' + typeName + ' **************')
); | 2239 this.writer.comment(('// ********** Code for ' + typeName + ' **************')
); |
| 2237 if (type.get$isNative() && !type.get$isTop()) { | 2240 if (type.get$isNative() && !type.get$isTop()) { |
| 2238 var nativeName = type.get$definition().get$nativeType().get$name(); | 2241 var nativeName = type.get$definition().get$nativeType().get$name(); |
| 2239 if ($eq(nativeName, '')) { | 2242 if ($eq(nativeName, '')) { |
| 2240 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); | 2243 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); |
| 2241 } | 2244 } |
| 2242 else if (type.get$jsname() != nativeName) { | 2245 else if (type.get$jsname() != nativeName) { |
| 2243 this.writer.writeln(('' + type.get$jsname() + ' = ' + nativeName + ';')); | 2246 this.writer.writeln(('' + type.get$jsname() + ' = ' + nativeName + ';')); |
| 2244 } | 2247 } |
| 2245 } | 2248 } |
| 2249 if (!type.get$isTop()) { |
| 2250 if ((type instanceof ConcreteType)) { |
| 2251 var c = type; |
| 2252 this.corejs.ensureInheritsHelper(); |
| 2253 this.writer.writeln(('\$inherits(' + c.get$jsname() + ', ' + c.genericType
.get$jsname() + ');')); |
| 2254 for (var p = c._parent; |
| 2255 (p instanceof ConcreteType); p = p.get$_parent()) { |
| 2256 this._ensureInheritMembersHelper(); |
| 2257 this._mixins.writeln(('\$inheritsMembers(' + c.get$jsname() + ', ' + p.g
et$jsname() + ');')); |
| 2258 } |
| 2259 } |
| 2260 else if (!type.get$isNative()) { |
| 2261 if (type.get$parent() != null && !type.get$parent().get$isObject()) { |
| 2262 this.corejs.ensureInheritsHelper(); |
| 2263 this.writer.writeln(('\$inherits(' + type.get$jsname() + ', ' + type.get
$parent().get$jsname() + ');')); |
| 2264 } |
| 2265 } |
| 2266 } |
| 2246 if (type.get$isTop()) { | 2267 if (type.get$isTop()) { |
| 2247 } | 2268 } |
| 2248 else if (type.get$constructors().get$length() == 0) { | 2269 else if (type.get$constructors().get$length() == 0) { |
| 2249 if (!type.get$isNative()) { | 2270 if (!type.get$isNative()) { |
| 2250 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); | 2271 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); |
| 2251 } | 2272 } |
| 2252 } | 2273 } |
| 2253 else { | 2274 else { |
| 2254 var standardConstructor = type.get$constructors().$index(''); | 2275 var standardConstructor = type.get$constructors().$index(''); |
| 2255 if (standardConstructor == null || standardConstructor.generator == null) { | 2276 if (standardConstructor == null || standardConstructor.generator == null) { |
| 2256 if (!type.get$isNative()) { | 2277 if (!type.get$isNative()) { |
| 2257 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); | 2278 this.writer.writeln(('function ' + type.get$jsname() + '() {}')); |
| 2258 } | 2279 } |
| 2259 } | 2280 } |
| 2260 else { | 2281 else { |
| 2261 standardConstructor.generator.writeDefinition(this.writer, null); | 2282 standardConstructor.generator.writeDefinition(this.writer, null); |
| 2262 } | 2283 } |
| 2263 var $$list = type.get$constructors().getValues(); | 2284 var $$list = type.get$constructors().getValues(); |
| 2264 for (var $$i = type.get$constructors().getValues().iterator$0(); $$i.hasNext
$0(); ) { | 2285 for (var $$i = type.get$constructors().getValues().iterator$0(); $$i.hasNext
$0(); ) { |
| 2265 var c = $$i.next$0(); | 2286 var c = $$i.next$0(); |
| 2266 if ($ne(c.get$generator(), null) && $ne(c, standardConstructor)) { | 2287 if ($ne(c.get$generator(), null) && $ne(c, standardConstructor)) { |
| 2267 c.get$generator().writeDefinition$2(this.writer); | 2288 c.get$generator().writeDefinition$2(this.writer); |
| 2268 } | 2289 } |
| 2269 } | 2290 } |
| 2270 } | 2291 } |
| 2271 if (!type.get$isTop()) { | |
| 2272 if ((type instanceof ConcreteType)) { | |
| 2273 var c = type; | |
| 2274 this.corejs.ensureInheritsHelper(); | |
| 2275 this.writer.writeln(('\$inherits(' + c.get$jsname() + ', ' + c.genericType
.get$jsname() + ');')); | |
| 2276 for (var p = c._parent; | |
| 2277 (p instanceof ConcreteType); p = p.get$_parent()) { | |
| 2278 this._ensureInheritMembersHelper(); | |
| 2279 this._mixins.writeln(('\$inheritsMembers(' + c.get$jsname() + ', ' + p.g
et$jsname() + ');')); | |
| 2280 } | |
| 2281 } | |
| 2282 else if (!type.get$isNative()) { | |
| 2283 if (type.get$parent() != null && !type.get$parent().get$isObject()) { | |
| 2284 this.corejs.ensureInheritsHelper(); | |
| 2285 this.writer.writeln(('\$inherits(' + type.get$jsname() + ', ' + type.get
$parent().get$jsname() + ');')); | |
| 2286 } | |
| 2287 } | |
| 2288 } | |
| 2289 if (!(type instanceof ConcreteType)) { | 2292 if (!(type instanceof ConcreteType)) { |
| 2290 this._maybeIsTest(type, type); | 2293 this._maybeIsTest(type, type); |
| 2291 } | 2294 } |
| 2292 if (type.get$genericType()._concreteTypes != null) { | 2295 if (type.get$genericType()._concreteTypes != null) { |
| 2293 var $$list = this._orderValues(type.get$genericType()._concreteTypes); | 2296 var $$list = this._orderValues(type.get$genericType()._concreteTypes); |
| 2294 for (var $$i = 0;$$i < $$list.length; $$i++) { | 2297 for (var $$i = 0;$$i < $$list.length; $$i++) { |
| 2295 var ct = $$list.$index($$i); | 2298 var ct = $$list.$index($$i); |
| 2296 this._maybeIsTest(type, ct); | 2299 this._maybeIsTest(type, ct); |
| 2297 } | 2300 } |
| 2298 } | 2301 } |
| (...skipping 1738 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4037 function LibraryImport(library, prefix) { | 4040 function LibraryImport(library, prefix) { |
| 4038 this.library = library; | 4041 this.library = library; |
| 4039 this.prefix = prefix; | 4042 this.prefix = prefix; |
| 4040 // Initializers done | 4043 // Initializers done |
| 4041 } | 4044 } |
| 4042 LibraryImport.prototype.get$prefix = function() { return this.prefix; }; | 4045 LibraryImport.prototype.get$prefix = function() { return this.prefix; }; |
| 4043 LibraryImport.prototype.set$prefix = function(value) { return this.prefix = valu
e; }; | 4046 LibraryImport.prototype.set$prefix = function(value) { return this.prefix = valu
e; }; |
| 4044 LibraryImport.prototype.get$library = function() { return this.library; }; | 4047 LibraryImport.prototype.get$library = function() { return this.library; }; |
| 4045 LibraryImport.prototype.set$library = function(value) { return this.library = va
lue; }; | 4048 LibraryImport.prototype.set$library = function(value) { return this.library = va
lue; }; |
| 4046 // ********** Code for Library ************** | 4049 // ********** Code for Library ************** |
| 4050 $inherits(Library, Element); |
| 4047 function Library(baseSource) { | 4051 function Library(baseSource) { |
| 4048 this.isWritten = false | 4052 this.isWritten = false |
| 4049 this.isMarked = false | 4053 this.isMarked = false |
| 4050 this.baseSource = baseSource; | 4054 this.baseSource = baseSource; |
| 4051 // Initializers done | 4055 // Initializers done |
| 4052 Element.call(this, null, null); | 4056 Element.call(this, null, null); |
| 4053 this.sourceDir = dirname(this.baseSource.filename); | 4057 this.sourceDir = dirname(this.baseSource.filename); |
| 4054 this.topType = new DefinedType(null, this, null, true); | 4058 this.topType = new DefinedType(null, this, null, true); |
| 4055 this.types = _map(['', this.topType]); | 4059 this.types = _map(['', this.topType]); |
| 4056 this.imports = []; | 4060 this.imports = []; |
| 4057 this.natives = []; | 4061 this.natives = []; |
| 4058 this.sources = []; | 4062 this.sources = []; |
| 4059 this._privateMembers = new HashMapImplementation(); | 4063 this._privateMembers = new HashMapImplementation(); |
| 4060 } | 4064 } |
| 4061 $inherits(Library, Element); | |
| 4062 Library.prototype.get$baseSource = function() { return this.baseSource; }; | 4065 Library.prototype.get$baseSource = function() { return this.baseSource; }; |
| 4063 Library.prototype.get$types = function() { return this.types; }; | 4066 Library.prototype.get$types = function() { return this.types; }; |
| 4064 Library.prototype.set$types = function(value) { return this.types = value; }; | 4067 Library.prototype.set$types = function(value) { return this.types = value; }; |
| 4065 Library.prototype.get$_privateMembers = function() { return this._privateMembers
; }; | 4068 Library.prototype.get$_privateMembers = function() { return this._privateMembers
; }; |
| 4066 Library.prototype.set$_privateMembers = function(value) { return this._privateMe
mbers = value; }; | 4069 Library.prototype.set$_privateMembers = function(value) { return this._privateMe
mbers = value; }; |
| 4067 Library.prototype.get$topType = function() { return this.topType; }; | 4070 Library.prototype.get$topType = function() { return this.topType; }; |
| 4068 Library.prototype.set$topType = function(value) { return this.topType = value; }
; | 4071 Library.prototype.set$topType = function(value) { return this.topType = value; }
; |
| 4069 Library.prototype.get$enclosingElement = function() { | 4072 Library.prototype.get$enclosingElement = function() { |
| 4070 return null; | 4073 return null; |
| 4071 } | 4074 } |
| (...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4543 ret.set$isInitializer(this.isInitializer); | 4546 ret.set$isInitializer(this.isInitializer); |
| 4544 return ret; | 4547 return ret; |
| 4545 } | 4548 } |
| 4546 Parameter.prototype.get$isOptional = function() { | 4549 Parameter.prototype.get$isOptional = function() { |
| 4547 return this.definition != null && this.definition.value != null; | 4550 return this.definition != null && this.definition.value != null; |
| 4548 } | 4551 } |
| 4549 Parameter.prototype.copyWithNewType$2 = Parameter.prototype.copyWithNewType; | 4552 Parameter.prototype.copyWithNewType$2 = Parameter.prototype.copyWithNewType; |
| 4550 Parameter.prototype.genValue$2 = Parameter.prototype.genValue; | 4553 Parameter.prototype.genValue$2 = Parameter.prototype.genValue; |
| 4551 Parameter.prototype.resolve$0 = Parameter.prototype.resolve; | 4554 Parameter.prototype.resolve$0 = Parameter.prototype.resolve; |
| 4552 // ********** Code for Member ************** | 4555 // ********** Code for Member ************** |
| 4556 $inherits(Member, Element); |
| 4553 function Member(name, declaringType) { | 4557 function Member(name, declaringType) { |
| 4554 this.isGenerated = false; | 4558 this.isGenerated = false; |
| 4555 this.declaringType = declaringType; | 4559 this.declaringType = declaringType; |
| 4556 // Initializers done | 4560 // Initializers done |
| 4557 Element.call(this, name, declaringType); | 4561 Element.call(this, name, declaringType); |
| 4558 } | 4562 } |
| 4559 $inherits(Member, Element); | |
| 4560 Member.prototype.get$declaringType = function() { return this.declaringType; }; | 4563 Member.prototype.get$declaringType = function() { return this.declaringType; }; |
| 4561 Member.prototype.get$generator = function() { return this.generator; }; | 4564 Member.prototype.get$generator = function() { return this.generator; }; |
| 4562 Member.prototype.set$generator = function(value) { return this.generator = value
; }; | 4565 Member.prototype.set$generator = function(value) { return this.generator = value
; }; |
| 4563 Member.prototype.get$library = function() { | 4566 Member.prototype.get$library = function() { |
| 4564 return this.declaringType.get$library(); | 4567 return this.declaringType.get$library(); |
| 4565 } | 4568 } |
| 4566 Member.prototype.get$isPrivate = function() { | 4569 Member.prototype.get$isPrivate = function() { |
| 4567 return this.name.startsWith('_'); | 4570 return this.name.startsWith('_'); |
| 4568 } | 4571 } |
| 4569 Member.prototype.get$isConstructor = function() { | 4572 Member.prototype.get$isConstructor = function() { |
| (...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4676 Member.prototype.computeValue$0 = Member.prototype.computeValue; | 4679 Member.prototype.computeValue$0 = Member.prototype.computeValue; |
| 4677 Member.prototype.hashCode$0 = Member.prototype.hashCode; | 4680 Member.prototype.hashCode$0 = Member.prototype.hashCode; |
| 4678 Member.prototype.invoke$4 = function($0, $1, $2, $3) { | 4681 Member.prototype.invoke$4 = function($0, $1, $2, $3) { |
| 4679 return this.invoke($0, $1, $2, $3, false); | 4682 return this.invoke($0, $1, $2, $3, false); |
| 4680 }; | 4683 }; |
| 4681 Member.prototype.invoke$4$isDynamic = Member.prototype.invoke; | 4684 Member.prototype.invoke$4$isDynamic = Member.prototype.invoke; |
| 4682 Member.prototype.invoke$5 = Member.prototype.invoke; | 4685 Member.prototype.invoke$5 = Member.prototype.invoke; |
| 4683 Member.prototype.provideFieldSyntax$0 = Member.prototype.provideFieldSyntax; | 4686 Member.prototype.provideFieldSyntax$0 = Member.prototype.provideFieldSyntax; |
| 4684 Member.prototype.providePropertySyntax$0 = Member.prototype.providePropertySynta
x; | 4687 Member.prototype.providePropertySyntax$0 = Member.prototype.providePropertySynta
x; |
| 4685 // ********** Code for TypeMember ************** | 4688 // ********** Code for TypeMember ************** |
| 4689 $inherits(TypeMember, Member); |
| 4686 function TypeMember(type) { | 4690 function TypeMember(type) { |
| 4687 this.type = type; | 4691 this.type = type; |
| 4688 // Initializers done | 4692 // Initializers done |
| 4689 Member.call(this, type.name, type.library.topType); | 4693 Member.call(this, type.name, type.library.topType); |
| 4690 } | 4694 } |
| 4691 $inherits(TypeMember, Member); | |
| 4692 TypeMember.prototype.get$type = function() { return this.type; }; | 4695 TypeMember.prototype.get$type = function() { return this.type; }; |
| 4693 TypeMember.prototype.get$span = function() { | 4696 TypeMember.prototype.get$span = function() { |
| 4694 return this.type.definition.span; | 4697 return this.type.definition.span; |
| 4695 } | 4698 } |
| 4696 TypeMember.prototype.get$isStatic = function() { | 4699 TypeMember.prototype.get$isStatic = function() { |
| 4697 return true; | 4700 return true; |
| 4698 } | 4701 } |
| 4699 TypeMember.prototype.get$returnType = function() { | 4702 TypeMember.prototype.get$returnType = function() { |
| 4700 return $globals.world.varType; | 4703 return $globals.world.varType; |
| 4701 } | 4704 } |
| (...skipping 28 matching lines...) Expand all Loading... |
| 4730 }; | 4733 }; |
| 4731 TypeMember.prototype._set$4$isDynamic = TypeMember.prototype._set; | 4734 TypeMember.prototype._set$4$isDynamic = TypeMember.prototype._set; |
| 4732 TypeMember.prototype._set$5 = TypeMember.prototype._set; | 4735 TypeMember.prototype._set$5 = TypeMember.prototype._set; |
| 4733 TypeMember.prototype.canInvoke$2 = TypeMember.prototype.canInvoke; | 4736 TypeMember.prototype.canInvoke$2 = TypeMember.prototype.canInvoke; |
| 4734 TypeMember.prototype.invoke$4 = function($0, $1, $2, $3) { | 4737 TypeMember.prototype.invoke$4 = function($0, $1, $2, $3) { |
| 4735 return this.invoke($0, $1, $2, $3, false); | 4738 return this.invoke($0, $1, $2, $3, false); |
| 4736 }; | 4739 }; |
| 4737 TypeMember.prototype.invoke$4$isDynamic = TypeMember.prototype.invoke; | 4740 TypeMember.prototype.invoke$4$isDynamic = TypeMember.prototype.invoke; |
| 4738 TypeMember.prototype.invoke$5 = TypeMember.prototype.invoke; | 4741 TypeMember.prototype.invoke$5 = TypeMember.prototype.invoke; |
| 4739 // ********** Code for FieldMember ************** | 4742 // ********** Code for FieldMember ************** |
| 4743 $inherits(FieldMember, Member); |
| 4740 function FieldMember(name, declaringType, definition, value) { | 4744 function FieldMember(name, declaringType, definition, value) { |
| 4741 this._providePropertySyntax = false | 4745 this._providePropertySyntax = false |
| 4742 this._computing = false | 4746 this._computing = false |
| 4743 this.definition = definition; | 4747 this.definition = definition; |
| 4744 this.value = value; | 4748 this.value = value; |
| 4745 this.isNative = false; | 4749 this.isNative = false; |
| 4746 // Initializers done | 4750 // Initializers done |
| 4747 Member.call(this, name, declaringType); | 4751 Member.call(this, name, declaringType); |
| 4748 } | 4752 } |
| 4749 $inherits(FieldMember, Member); | |
| 4750 FieldMember.prototype.get$definition = function() { return this.definition; }; | 4753 FieldMember.prototype.get$definition = function() { return this.definition; }; |
| 4751 FieldMember.prototype.get$value = function() { return this.value; }; | 4754 FieldMember.prototype.get$value = function() { return this.value; }; |
| 4752 FieldMember.prototype.get$type = function() { return this.type; }; | 4755 FieldMember.prototype.get$type = function() { return this.type; }; |
| 4753 FieldMember.prototype.set$type = function(value) { return this.type = value; }; | 4756 FieldMember.prototype.set$type = function(value) { return this.type = value; }; |
| 4754 FieldMember.prototype.get$isStatic = function() { return this.isStatic; }; | 4757 FieldMember.prototype.get$isStatic = function() { return this.isStatic; }; |
| 4755 FieldMember.prototype.set$isStatic = function(value) { return this.isStatic = va
lue; }; | 4758 FieldMember.prototype.set$isStatic = function(value) { return this.isStatic = va
lue; }; |
| 4756 FieldMember.prototype.get$isFinal = function() { return this.isFinal; }; | 4759 FieldMember.prototype.get$isFinal = function() { return this.isFinal; }; |
| 4757 FieldMember.prototype.set$isFinal = function(value) { return this.isFinal = valu
e; }; | 4760 FieldMember.prototype.set$isFinal = function(value) { return this.isFinal = valu
e; }; |
| 4758 FieldMember.prototype.get$isNative = function() { return this.isNative; }; | 4761 FieldMember.prototype.get$isNative = function() { return this.isNative; }; |
| 4759 FieldMember.prototype.set$isNative = function(value) { return this.isNative = va
lue; }; | 4762 FieldMember.prototype.set$isNative = function(value) { return this.isNative = va
lue; }; |
| (...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4913 FieldMember.prototype._set$4 = function($0, $1, $2, $3) { | 4916 FieldMember.prototype._set$4 = function($0, $1, $2, $3) { |
| 4914 return this._set($0, $1, $2, $3, false); | 4917 return this._set($0, $1, $2, $3, false); |
| 4915 }; | 4918 }; |
| 4916 FieldMember.prototype._set$4$isDynamic = FieldMember.prototype._set; | 4919 FieldMember.prototype._set$4$isDynamic = FieldMember.prototype._set; |
| 4917 FieldMember.prototype._set$5 = FieldMember.prototype._set; | 4920 FieldMember.prototype._set$5 = FieldMember.prototype._set; |
| 4918 FieldMember.prototype.computeValue$0 = FieldMember.prototype.computeValue; | 4921 FieldMember.prototype.computeValue$0 = FieldMember.prototype.computeValue; |
| 4919 FieldMember.prototype.provideFieldSyntax$0 = FieldMember.prototype.provideFieldS
yntax; | 4922 FieldMember.prototype.provideFieldSyntax$0 = FieldMember.prototype.provideFieldS
yntax; |
| 4920 FieldMember.prototype.providePropertySyntax$0 = FieldMember.prototype.providePro
pertySyntax; | 4923 FieldMember.prototype.providePropertySyntax$0 = FieldMember.prototype.providePro
pertySyntax; |
| 4921 FieldMember.prototype.resolve$0 = FieldMember.prototype.resolve; | 4924 FieldMember.prototype.resolve$0 = FieldMember.prototype.resolve; |
| 4922 // ********** Code for PropertyMember ************** | 4925 // ********** Code for PropertyMember ************** |
| 4926 $inherits(PropertyMember, Member); |
| 4923 function PropertyMember(name, declaringType) { | 4927 function PropertyMember(name, declaringType) { |
| 4924 this._provideFieldSyntax = false | 4928 this._provideFieldSyntax = false |
| 4925 // Initializers done | 4929 // Initializers done |
| 4926 Member.call(this, name, declaringType); | 4930 Member.call(this, name, declaringType); |
| 4927 } | 4931 } |
| 4928 $inherits(PropertyMember, Member); | |
| 4929 PropertyMember.prototype.get$getter = function() { return this.getter; }; | 4932 PropertyMember.prototype.get$getter = function() { return this.getter; }; |
| 4930 PropertyMember.prototype.set$getter = function(value) { return this.getter = val
ue; }; | 4933 PropertyMember.prototype.set$getter = function(value) { return this.getter = val
ue; }; |
| 4931 PropertyMember.prototype.get$setter = function() { return this.setter; }; | 4934 PropertyMember.prototype.get$setter = function() { return this.setter; }; |
| 4932 PropertyMember.prototype.set$setter = function(value) { return this.setter = val
ue; }; | 4935 PropertyMember.prototype.set$setter = function(value) { return this.setter = val
ue; }; |
| 4933 PropertyMember.prototype.get$span = function() { | 4936 PropertyMember.prototype.get$span = function() { |
| 4934 return this.getter != null ? this.getter.get$span() : null; | 4937 return this.getter != null ? this.getter.get$span() : null; |
| 4935 } | 4938 } |
| 4936 PropertyMember.prototype.get$canGet = function() { | 4939 PropertyMember.prototype.get$canGet = function() { |
| 4937 return this.getter != null; | 4940 return this.getter != null; |
| 4938 } | 4941 } |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5014 PropertyMember.prototype._get$4 = PropertyMember.prototype._get; | 5017 PropertyMember.prototype._get$4 = PropertyMember.prototype._get; |
| 5015 PropertyMember.prototype._set$4 = function($0, $1, $2, $3) { | 5018 PropertyMember.prototype._set$4 = function($0, $1, $2, $3) { |
| 5016 return this._set($0, $1, $2, $3, false); | 5019 return this._set($0, $1, $2, $3, false); |
| 5017 }; | 5020 }; |
| 5018 PropertyMember.prototype._set$4$isDynamic = PropertyMember.prototype._set; | 5021 PropertyMember.prototype._set$4$isDynamic = PropertyMember.prototype._set; |
| 5019 PropertyMember.prototype._set$5 = PropertyMember.prototype._set; | 5022 PropertyMember.prototype._set$5 = PropertyMember.prototype._set; |
| 5020 PropertyMember.prototype.provideFieldSyntax$0 = PropertyMember.prototype.provide
FieldSyntax; | 5023 PropertyMember.prototype.provideFieldSyntax$0 = PropertyMember.prototype.provide
FieldSyntax; |
| 5021 PropertyMember.prototype.providePropertySyntax$0 = PropertyMember.prototype.prov
idePropertySyntax; | 5024 PropertyMember.prototype.providePropertySyntax$0 = PropertyMember.prototype.prov
idePropertySyntax; |
| 5022 PropertyMember.prototype.resolve$0 = PropertyMember.prototype.resolve; | 5025 PropertyMember.prototype.resolve$0 = PropertyMember.prototype.resolve; |
| 5023 // ********** Code for ConcreteMember ************** | 5026 // ********** Code for ConcreteMember ************** |
| 5027 $inherits(ConcreteMember, Member); |
| 5024 function ConcreteMember(name, declaringType, baseMember) { | 5028 function ConcreteMember(name, declaringType, baseMember) { |
| 5025 this.baseMember = baseMember; | 5029 this.baseMember = baseMember; |
| 5026 // Initializers done | 5030 // Initializers done |
| 5027 Member.call(this, name, declaringType); | 5031 Member.call(this, name, declaringType); |
| 5028 this.parameters = []; | 5032 this.parameters = []; |
| 5029 this.returnType = this.baseMember.get$returnType().resolveTypeParams(declaring
Type); | 5033 this.returnType = this.baseMember.get$returnType().resolveTypeParams(declaring
Type); |
| 5030 var $$list = this.baseMember.get$parameters(); | 5034 var $$list = this.baseMember.get$parameters(); |
| 5031 for (var $$i = 0;$$i < $$list.length; $$i++) { | 5035 for (var $$i = 0;$$i < $$list.length; $$i++) { |
| 5032 var p = $$list.$index($$i); | 5036 var p = $$list.$index($$i); |
| 5033 var newType = p.get$type().resolveTypeParams$1(declaringType); | 5037 var newType = p.get$type().resolveTypeParams$1(declaringType); |
| 5034 if ($ne(newType, p.get$type())) { | 5038 if ($ne(newType, p.get$type())) { |
| 5035 this.parameters.add(p.copyWithNewType$2(this, newType)); | 5039 this.parameters.add(p.copyWithNewType$2(this, newType)); |
| 5036 } | 5040 } |
| 5037 else { | 5041 else { |
| 5038 this.parameters.add(p); | 5042 this.parameters.add(p); |
| 5039 } | 5043 } |
| 5040 } | 5044 } |
| 5041 } | 5045 } |
| 5042 $inherits(ConcreteMember, Member); | |
| 5043 ConcreteMember.prototype.get$returnType = function() { return this.returnType; }
; | 5046 ConcreteMember.prototype.get$returnType = function() { return this.returnType; }
; |
| 5044 ConcreteMember.prototype.set$returnType = function(value) { return this.returnTy
pe = value; }; | 5047 ConcreteMember.prototype.set$returnType = function(value) { return this.returnTy
pe = value; }; |
| 5045 ConcreteMember.prototype.get$parameters = function() { return this.parameters; }
; | 5048 ConcreteMember.prototype.get$parameters = function() { return this.parameters; }
; |
| 5046 ConcreteMember.prototype.set$parameters = function(value) { return this.paramete
rs = value; }; | 5049 ConcreteMember.prototype.set$parameters = function(value) { return this.paramete
rs = value; }; |
| 5047 ConcreteMember.prototype.get$span = function() { | 5050 ConcreteMember.prototype.get$span = function() { |
| 5048 return this.baseMember.get$span(); | 5051 return this.baseMember.get$span(); |
| 5049 } | 5052 } |
| 5050 ConcreteMember.prototype.get$isStatic = function() { | 5053 ConcreteMember.prototype.get$isStatic = function() { |
| 5051 return this.baseMember.get$isStatic(); | 5054 return this.baseMember.get$isStatic(); |
| 5052 } | 5055 } |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5155 ConcreteMember.prototype.canInvoke$2 = ConcreteMember.prototype.canInvoke; | 5158 ConcreteMember.prototype.canInvoke$2 = ConcreteMember.prototype.canInvoke; |
| 5156 ConcreteMember.prototype.computeValue$0 = ConcreteMember.prototype.computeValue; | 5159 ConcreteMember.prototype.computeValue$0 = ConcreteMember.prototype.computeValue; |
| 5157 ConcreteMember.prototype.invoke$4 = function($0, $1, $2, $3) { | 5160 ConcreteMember.prototype.invoke$4 = function($0, $1, $2, $3) { |
| 5158 return this.invoke($0, $1, $2, $3, false); | 5161 return this.invoke($0, $1, $2, $3, false); |
| 5159 }; | 5162 }; |
| 5160 ConcreteMember.prototype.invoke$4$isDynamic = ConcreteMember.prototype.invoke; | 5163 ConcreteMember.prototype.invoke$4$isDynamic = ConcreteMember.prototype.invoke; |
| 5161 ConcreteMember.prototype.invoke$5 = ConcreteMember.prototype.invoke; | 5164 ConcreteMember.prototype.invoke$5 = ConcreteMember.prototype.invoke; |
| 5162 ConcreteMember.prototype.provideFieldSyntax$0 = ConcreteMember.prototype.provide
FieldSyntax; | 5165 ConcreteMember.prototype.provideFieldSyntax$0 = ConcreteMember.prototype.provide
FieldSyntax; |
| 5163 ConcreteMember.prototype.providePropertySyntax$0 = ConcreteMember.prototype.prov
idePropertySyntax; | 5166 ConcreteMember.prototype.providePropertySyntax$0 = ConcreteMember.prototype.prov
idePropertySyntax; |
| 5164 // ********** Code for MethodMember ************** | 5167 // ********** Code for MethodMember ************** |
| 5168 $inherits(MethodMember, Member); |
| 5165 function MethodMember(name, declaringType, definition) { | 5169 function MethodMember(name, declaringType, definition) { |
| 5166 this.isStatic = false | 5170 this.isStatic = false |
| 5167 this.isAbstract = false | 5171 this.isAbstract = false |
| 5168 this.isConst = false | 5172 this.isConst = false |
| 5169 this.isFactory = false | 5173 this.isFactory = false |
| 5170 this.isLambda = false | 5174 this.isLambda = false |
| 5171 this._providePropertySyntax = false | 5175 this._providePropertySyntax = false |
| 5172 this._provideFieldSyntax = false | 5176 this._provideFieldSyntax = false |
| 5173 this._provideOptionalParamInfo = false | 5177 this._provideOptionalParamInfo = false |
| 5174 this.definition = definition; | 5178 this.definition = definition; |
| 5175 // Initializers done | 5179 // Initializers done |
| 5176 Member.call(this, name, declaringType); | 5180 Member.call(this, name, declaringType); |
| 5177 } | 5181 } |
| 5178 $inherits(MethodMember, Member); | |
| 5179 MethodMember.prototype.get$definition = function() { return this.definition; }; | 5182 MethodMember.prototype.get$definition = function() { return this.definition; }; |
| 5180 MethodMember.prototype.set$definition = function(value) { return this.definition
= value; }; | 5183 MethodMember.prototype.set$definition = function(value) { return this.definition
= value; }; |
| 5181 MethodMember.prototype.get$returnType = function() { return this.returnType; }; | 5184 MethodMember.prototype.get$returnType = function() { return this.returnType; }; |
| 5182 MethodMember.prototype.set$returnType = function(value) { return this.returnType
= value; }; | 5185 MethodMember.prototype.set$returnType = function(value) { return this.returnType
= value; }; |
| 5183 MethodMember.prototype.get$parameters = function() { return this.parameters; }; | 5186 MethodMember.prototype.get$parameters = function() { return this.parameters; }; |
| 5184 MethodMember.prototype.set$parameters = function(value) { return this.parameters
= value; }; | 5187 MethodMember.prototype.set$parameters = function(value) { return this.parameters
= value; }; |
| 5185 MethodMember.prototype.get$typeParameters = function() { return this.typeParamet
ers; }; | 5188 MethodMember.prototype.get$typeParameters = function() { return this.typeParamet
ers; }; |
| 5186 MethodMember.prototype.set$typeParameters = function(value) { return this.typePa
rameters = value; }; | 5189 MethodMember.prototype.set$typeParameters = function(value) { return this.typePa
rameters = value; }; |
| 5187 MethodMember.prototype.get$isStatic = function() { return this.isStatic; }; | 5190 MethodMember.prototype.get$isStatic = function() { return this.isStatic; }; |
| 5188 MethodMember.prototype.set$isStatic = function(value) { return this.isStatic = v
alue; }; | 5191 MethodMember.prototype.set$isStatic = function(value) { return this.isStatic = v
alue; }; |
| (...skipping 1166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6355 return this.previous; | 6358 return this.previous; |
| 6356 } | 6359 } |
| 6357 InterpStack.push = function(stack, quote, isMultiline) { | 6360 InterpStack.push = function(stack, quote, isMultiline) { |
| 6358 var newStack = new InterpStack(stack, quote, isMultiline); | 6361 var newStack = new InterpStack(stack, quote, isMultiline); |
| 6359 if (stack != null) newStack.set$previous(stack); | 6362 if (stack != null) newStack.set$previous(stack); |
| 6360 return newStack; | 6363 return newStack; |
| 6361 } | 6364 } |
| 6362 InterpStack.prototype.next$0 = function() { | 6365 InterpStack.prototype.next$0 = function() { |
| 6363 return this.next(); | 6366 return this.next(); |
| 6364 }; | 6367 }; |
| 6368 // ********** Code for TokenizerHelpers ************** |
| 6369 function TokenizerHelpers() { |
| 6370 // Initializers done |
| 6371 } |
| 6372 TokenizerHelpers.isIdentifierStart = function(c) { |
| 6373 return ((c >= 97 && c <= 122) || (c >= 65 && c <= 90) || c == 95); |
| 6374 } |
| 6375 TokenizerHelpers.isDigit = function(c) { |
| 6376 return (c >= 48 && c <= 57); |
| 6377 } |
| 6378 TokenizerHelpers.isHexDigit = function(c) { |
| 6379 return (TokenizerHelpers.isDigit(c) || (c >= 97 && c <= 102) || (c >= 65 && c
<= 70)); |
| 6380 } |
| 6381 TokenizerHelpers.isIdentifierPart = function(c) { |
| 6382 return (TokenizerHelpers.isIdentifierStart(c) || TokenizerHelpers.isDigit(c) |
| c == 36); |
| 6383 } |
| 6384 TokenizerHelpers.isInterpIdentifierPart = function(c) { |
| 6385 return (TokenizerHelpers.isIdentifierStart(c) || TokenizerHelpers.isDigit(c)); |
| 6386 } |
| 6365 // ********** Code for TokenizerBase ************** | 6387 // ********** Code for TokenizerBase ************** |
| 6388 $inherits(TokenizerBase, TokenizerHelpers); |
| 6366 function TokenizerBase(_source, _skipWhitespace, index) { | 6389 function TokenizerBase(_source, _skipWhitespace, index) { |
| 6367 this._source = _source; | 6390 this._source = _source; |
| 6368 this._skipWhitespace = _skipWhitespace; | 6391 this._skipWhitespace = _skipWhitespace; |
| 6369 this._index = index; | 6392 this._lang_index = index; |
| 6370 // Initializers done | 6393 // Initializers done |
| 6371 TokenizerHelpers.call(this); | 6394 TokenizerHelpers.call(this); |
| 6372 this._text = this._source.get$text(); | 6395 this._text = this._source.get$text(); |
| 6373 } | 6396 } |
| 6374 $inherits(TokenizerBase, TokenizerHelpers); | |
| 6375 TokenizerBase.prototype._nextChar = function() { | 6397 TokenizerBase.prototype._nextChar = function() { |
| 6376 if (this._index < this._text.length) { | 6398 if (this._lang_index < this._text.length) { |
| 6377 return this._text.charCodeAt(this._index++); | 6399 return this._text.charCodeAt(this._lang_index++); |
| 6378 } | 6400 } |
| 6379 else { | 6401 else { |
| 6380 return 0; | 6402 return 0; |
| 6381 } | 6403 } |
| 6382 } | 6404 } |
| 6383 TokenizerBase.prototype._peekChar = function() { | 6405 TokenizerBase.prototype._peekChar = function() { |
| 6384 if (this._index < this._text.length) { | 6406 if (this._lang_index < this._text.length) { |
| 6385 return this._text.charCodeAt(this._index); | 6407 return this._text.charCodeAt(this._lang_index); |
| 6386 } | 6408 } |
| 6387 else { | 6409 else { |
| 6388 return 0; | 6410 return 0; |
| 6389 } | 6411 } |
| 6390 } | 6412 } |
| 6391 TokenizerBase.prototype._maybeEatChar = function(ch) { | 6413 TokenizerBase.prototype._maybeEatChar = function(ch) { |
| 6392 if (this._index < this._text.length) { | 6414 if (this._lang_index < this._text.length) { |
| 6393 if (this._text.charCodeAt(this._index) == ch) { | 6415 if (this._text.charCodeAt(this._lang_index) == ch) { |
| 6394 this._index++; | 6416 this._lang_index++; |
| 6395 return true; | 6417 return true; |
| 6396 } | 6418 } |
| 6397 else { | 6419 else { |
| 6398 return false; | 6420 return false; |
| 6399 } | 6421 } |
| 6400 } | 6422 } |
| 6401 else { | 6423 else { |
| 6402 return false; | 6424 return false; |
| 6403 } | 6425 } |
| 6404 } | 6426 } |
| 6405 TokenizerBase.prototype._finishToken = function(kind) { | 6427 TokenizerBase.prototype._finishToken = function(kind) { |
| 6406 return new Token(kind, this._source, this._startIndex, this._index); | 6428 return new Token(kind, this._source, this._startIndex, this._lang_index); |
| 6407 } | 6429 } |
| 6408 TokenizerBase.prototype._errorToken = function() { | 6430 TokenizerBase.prototype._errorToken = function() { |
| 6409 return this._finishToken(65/*TokenKind.ERROR*/); | 6431 return this._finishToken(65/*TokenKind.ERROR*/); |
| 6410 } | 6432 } |
| 6411 TokenizerBase.prototype.finishWhitespace = function() { | 6433 TokenizerBase.prototype.finishWhitespace = function() { |
| 6412 this._index--; | 6434 this._lang_index--; |
| 6413 while (this._index < this._text.length) { | 6435 while (this._lang_index < this._text.length) { |
| 6414 var ch = this._text.charCodeAt(this._index++); | 6436 var ch = this._text.charCodeAt(this._lang_index++); |
| 6415 if (ch == 32 || ch == 9 || ch == 13) { | 6437 if (ch == 32 || ch == 9 || ch == 13) { |
| 6416 } | 6438 } |
| 6417 else if (ch == 10) { | 6439 else if (ch == 10) { |
| 6418 if (!this._skipWhitespace) { | 6440 if (!this._skipWhitespace) { |
| 6419 return this._finishToken(63/*TokenKind.WHITESPACE*/); | 6441 return this._finishToken(63/*TokenKind.WHITESPACE*/); |
| 6420 } | 6442 } |
| 6421 } | 6443 } |
| 6422 else { | 6444 else { |
| 6423 this._index--; | 6445 this._lang_index--; |
| 6424 if (this._skipWhitespace) { | 6446 if (this._skipWhitespace) { |
| 6425 return this.next(); | 6447 return this.next(); |
| 6426 } | 6448 } |
| 6427 else { | 6449 else { |
| 6428 return this._finishToken(63/*TokenKind.WHITESPACE*/); | 6450 return this._finishToken(63/*TokenKind.WHITESPACE*/); |
| 6429 } | 6451 } |
| 6430 } | 6452 } |
| 6431 } | 6453 } |
| 6432 return this._finishToken(1/*TokenKind.END_OF_FILE*/); | 6454 return this._finishToken(1/*TokenKind.END_OF_FILE*/); |
| 6433 } | 6455 } |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6465 } | 6487 } |
| 6466 else { | 6488 else { |
| 6467 return this._finishToken(64/*TokenKind.COMMENT*/); | 6489 return this._finishToken(64/*TokenKind.COMMENT*/); |
| 6468 } | 6490 } |
| 6469 } | 6491 } |
| 6470 } | 6492 } |
| 6471 } | 6493 } |
| 6472 return this._errorToken(); | 6494 return this._errorToken(); |
| 6473 } | 6495 } |
| 6474 TokenizerBase.prototype.eatDigits = function() { | 6496 TokenizerBase.prototype.eatDigits = function() { |
| 6475 while (this._index < this._text.length) { | 6497 while (this._lang_index < this._text.length) { |
| 6476 if (TokenizerHelpers.isDigit(this._text.charCodeAt(this._index))) { | 6498 if (TokenizerHelpers.isDigit(this._text.charCodeAt(this._lang_index))) { |
| 6477 this._index++; | 6499 this._lang_index++; |
| 6478 } | 6500 } |
| 6479 else { | 6501 else { |
| 6480 return; | 6502 return; |
| 6481 } | 6503 } |
| 6482 } | 6504 } |
| 6483 } | 6505 } |
| 6484 TokenizerBase.prototype.eatHexDigits = function() { | 6506 TokenizerBase.prototype.eatHexDigits = function() { |
| 6485 while (this._index < this._text.length) { | 6507 while (this._lang_index < this._text.length) { |
| 6486 if (TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._index))) { | 6508 if (TokenizerHelpers.isHexDigit(this._text.charCodeAt(this._lang_index))) { |
| 6487 this._index++; | 6509 this._lang_index++; |
| 6488 } | 6510 } |
| 6489 else { | 6511 else { |
| 6490 return; | 6512 return; |
| 6491 } | 6513 } |
| 6492 } | 6514 } |
| 6493 } | 6515 } |
| 6494 TokenizerBase.prototype.maybeEatHexDigit = function() { | 6516 TokenizerBase.prototype.maybeEatHexDigit = function() { |
| 6495 if (this._index < this._text.length && TokenizerHelpers.isHexDigit(this._text.
charCodeAt(this._index))) { | 6517 if (this._lang_index < this._text.length && TokenizerHelpers.isHexDigit(this._
text.charCodeAt(this._lang_index))) { |
| 6496 this._index++; | 6518 this._lang_index++; |
| 6497 return true; | 6519 return true; |
| 6498 } | 6520 } |
| 6499 return false; | 6521 return false; |
| 6500 } | 6522 } |
| 6501 TokenizerBase.prototype.finishHex = function() { | 6523 TokenizerBase.prototype.finishHex = function() { |
| 6502 this.eatHexDigits(); | 6524 this.eatHexDigits(); |
| 6503 return this._finishToken(61/*TokenKind.HEX_INTEGER*/); | 6525 return this._finishToken(61/*TokenKind.HEX_INTEGER*/); |
| 6504 } | 6526 } |
| 6505 TokenizerBase.prototype.finishNumber = function() { | 6527 TokenizerBase.prototype.finishNumber = function() { |
| 6506 this.eatDigits(); | 6528 this.eatDigits(); |
| 6507 if (this._peekChar() == 46) { | 6529 if (this._peekChar() == 46) { |
| 6508 this._nextChar(); | 6530 this._nextChar(); |
| 6509 if (TokenizerHelpers.isDigit(this._peekChar())) { | 6531 if (TokenizerHelpers.isDigit(this._peekChar())) { |
| 6510 this.eatDigits(); | 6532 this.eatDigits(); |
| 6511 return this.finishNumberExtra(62/*TokenKind.DOUBLE*/); | 6533 return this.finishNumberExtra(62/*TokenKind.DOUBLE*/); |
| 6512 } | 6534 } |
| 6513 else { | 6535 else { |
| 6514 this._index--; | 6536 this._lang_index--; |
| 6515 } | 6537 } |
| 6516 } | 6538 } |
| 6517 return this.finishNumberExtra(60/*TokenKind.INTEGER*/); | 6539 return this.finishNumberExtra(60/*TokenKind.INTEGER*/); |
| 6518 } | 6540 } |
| 6519 TokenizerBase.prototype.finishNumberExtra = function(kind) { | 6541 TokenizerBase.prototype.finishNumberExtra = function(kind) { |
| 6520 if (this._maybeEatChar(101) || this._maybeEatChar(69)) { | 6542 if (this._maybeEatChar(101) || this._maybeEatChar(69)) { |
| 6521 kind = 62/*TokenKind.DOUBLE*/; | 6543 kind = 62/*TokenKind.DOUBLE*/; |
| 6522 this._maybeEatChar(45); | 6544 this._maybeEatChar(45); |
| 6523 this._maybeEatChar(43); | 6545 this._maybeEatChar(43); |
| 6524 this.eatDigits(); | 6546 this.eatDigits(); |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6638 TokenizerBase.prototype.eatEscapeSequence = function() { | 6660 TokenizerBase.prototype.eatEscapeSequence = function() { |
| 6639 var hex; | 6661 var hex; |
| 6640 switch (this._nextChar()) { | 6662 switch (this._nextChar()) { |
| 6641 case 120: | 6663 case 120: |
| 6642 | 6664 |
| 6643 return this.maybeEatHexDigit() && this.maybeEatHexDigit(); | 6665 return this.maybeEatHexDigit() && this.maybeEatHexDigit(); |
| 6644 | 6666 |
| 6645 case 117: | 6667 case 117: |
| 6646 | 6668 |
| 6647 if (this._maybeEatChar(123)) { | 6669 if (this._maybeEatChar(123)) { |
| 6648 var start = this._index; | 6670 var start = this._lang_index; |
| 6649 this.eatHexDigits(); | 6671 this.eatHexDigits(); |
| 6650 var chars = this._index - start; | 6672 var chars = this._lang_index - start; |
| 6651 if (chars > 0 && chars <= 6 && this._maybeEatChar(125)) { | 6673 if (chars > 0 && chars <= 6 && this._maybeEatChar(125)) { |
| 6652 hex = this._text.substring(start, start + chars); | 6674 hex = this._text.substring(start, start + chars); |
| 6653 break; | 6675 break; |
| 6654 } | 6676 } |
| 6655 else { | 6677 else { |
| 6656 return false; | 6678 return false; |
| 6657 } | 6679 } |
| 6658 } | 6680 } |
| 6659 else { | 6681 else { |
| 6660 if (this.maybeEatHexDigit() && this.maybeEatHexDigit() && this.maybeEatH
exDigit() && this.maybeEatHexDigit()) { | 6682 if (this.maybeEatHexDigit() && this.maybeEatHexDigit() && this.maybeEatH
exDigit() && this.maybeEatHexDigit()) { |
| 6661 hex = this._text.substring(this._index - 4, this._index); | 6683 hex = this._text.substring(this._lang_index - 4, this._lang_index); |
| 6662 break; | 6684 break; |
| 6663 } | 6685 } |
| 6664 else { | 6686 else { |
| 6665 return false; | 6687 return false; |
| 6666 } | 6688 } |
| 6667 } | 6689 } |
| 6668 | 6690 |
| 6669 default: | 6691 default: |
| 6670 | 6692 |
| 6671 return true; | 6693 return true; |
| (...skipping 10 matching lines...) Expand all Loading... |
| 6682 else { | 6704 else { |
| 6683 return this._finishToken(14/*TokenKind.DOT*/); | 6705 return this._finishToken(14/*TokenKind.DOT*/); |
| 6684 } | 6706 } |
| 6685 } | 6707 } |
| 6686 TokenizerBase.prototype.finishIdentifier = function(ch) { | 6708 TokenizerBase.prototype.finishIdentifier = function(ch) { |
| 6687 if (this._interpStack != null && this._interpStack.depth == -1) { | 6709 if (this._interpStack != null && this._interpStack.depth == -1) { |
| 6688 this._interpStack.depth = 0; | 6710 this._interpStack.depth = 0; |
| 6689 if (ch == 36) { | 6711 if (ch == 36) { |
| 6690 return this._errorToken(); | 6712 return this._errorToken(); |
| 6691 } | 6713 } |
| 6692 while (this._index < this._text.length) { | 6714 while (this._lang_index < this._text.length) { |
| 6693 if (!TokenizerHelpers.isInterpIdentifierPart(this._text.charCodeAt(this._i
ndex++))) { | 6715 if (!TokenizerHelpers.isInterpIdentifierPart(this._text.charCodeAt(this._l
ang_index++))) { |
| 6694 this._index--; | 6716 this._lang_index--; |
| 6695 break; | 6717 break; |
| 6696 } | 6718 } |
| 6697 } | 6719 } |
| 6698 } | 6720 } |
| 6699 else { | 6721 else { |
| 6700 while (this._index < this._text.length) { | 6722 while (this._lang_index < this._text.length) { |
| 6701 if (!TokenizerHelpers.isIdentifierPart(this._text.charCodeAt(this._index++
))) { | 6723 if (!TokenizerHelpers.isIdentifierPart(this._text.charCodeAt(this._lang_in
dex++))) { |
| 6702 this._index--; | 6724 this._lang_index--; |
| 6703 break; | 6725 break; |
| 6704 } | 6726 } |
| 6705 } | 6727 } |
| 6706 } | 6728 } |
| 6707 var kind = this.getIdentifierKind(); | 6729 var kind = this.getIdentifierKind(); |
| 6708 if (kind == 70/*TokenKind.IDENTIFIER*/) { | 6730 if (kind == 70/*TokenKind.IDENTIFIER*/) { |
| 6709 return this._finishToken(70/*TokenKind.IDENTIFIER*/); | 6731 return this._finishToken(70/*TokenKind.IDENTIFIER*/); |
| 6710 } | 6732 } |
| 6711 else { | 6733 else { |
| 6712 return this._finishToken(kind); | 6734 return this._finishToken(kind); |
| 6713 } | 6735 } |
| 6714 } | 6736 } |
| 6715 TokenizerBase.prototype.next$0 = TokenizerBase.prototype.next; | 6737 TokenizerBase.prototype.next$0 = TokenizerBase.prototype.next; |
| 6716 // ********** Code for Tokenizer ************** | 6738 // ********** Code for Tokenizer ************** |
| 6739 $inherits(Tokenizer, TokenizerBase); |
| 6717 function Tokenizer(source, skipWhitespace, index) { | 6740 function Tokenizer(source, skipWhitespace, index) { |
| 6718 // Initializers done | 6741 // Initializers done |
| 6719 TokenizerBase.call(this, source, skipWhitespace, index); | 6742 TokenizerBase.call(this, source, skipWhitespace, index); |
| 6720 } | 6743 } |
| 6721 $inherits(Tokenizer, TokenizerBase); | |
| 6722 Tokenizer.prototype.next = function() { | 6744 Tokenizer.prototype.next = function() { |
| 6723 this._startIndex = this._index; | 6745 this._startIndex = this._lang_index; |
| 6724 if (this._interpStack != null && this._interpStack.depth == 0) { | 6746 if (this._interpStack != null && this._interpStack.depth == 0) { |
| 6725 var istack = this._interpStack; | 6747 var istack = this._interpStack; |
| 6726 this._interpStack = this._interpStack.pop(); | 6748 this._interpStack = this._interpStack.pop(); |
| 6727 if (istack.get$isMultiline()) { | 6749 if (istack.get$isMultiline()) { |
| 6728 return this.finishMultilineString(istack.get$quote()); | 6750 return this.finishMultilineString(istack.get$quote()); |
| 6729 } | 6751 } |
| 6730 else { | 6752 else { |
| 6731 return this.finishStringBody(istack.get$quote()); | 6753 return this.finishStringBody(istack.get$quote()); |
| 6732 } | 6754 } |
| 6733 } | 6755 } |
| (...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7048 return this.finishNumber(); | 7070 return this.finishNumber(); |
| 7049 } | 7071 } |
| 7050 else { | 7072 else { |
| 7051 return this._errorToken(); | 7073 return this._errorToken(); |
| 7052 } | 7074 } |
| 7053 | 7075 |
| 7054 } | 7076 } |
| 7055 } | 7077 } |
| 7056 Tokenizer.prototype.getIdentifierKind = function() { | 7078 Tokenizer.prototype.getIdentifierKind = function() { |
| 7057 var i0 = this._startIndex; | 7079 var i0 = this._startIndex; |
| 7058 switch (this._index - i0) { | 7080 switch (this._lang_index - i0) { |
| 7059 case 2: | 7081 case 2: |
| 7060 | 7082 |
| 7061 if (this._text.charCodeAt(i0) == 100) { | 7083 if (this._text.charCodeAt(i0) == 100) { |
| 7062 if (this._text.charCodeAt(i0 + 1) == 111) return 95/*TokenKind.DO*/; | 7084 if (this._text.charCodeAt(i0 + 1) == 111) return 95/*TokenKind.DO*/; |
| 7063 } | 7085 } |
| 7064 else if (this._text.charCodeAt(i0) == 105) { | 7086 else if (this._text.charCodeAt(i0) == 105) { |
| 7065 if (this._text.charCodeAt(i0 + 1) == 102) { | 7087 if (this._text.charCodeAt(i0 + 1) == 102) { |
| 7066 return 101/*TokenKind.IF*/; | 7088 return 101/*TokenKind.IF*/; |
| 7067 } | 7089 } |
| 7068 else if (this._text.charCodeAt(i0 + 1) == 110) { | 7090 else if (this._text.charCodeAt(i0 + 1) == 110) { |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7237 if (this._text.charCodeAt(i0) == 105 && this._text.charCodeAt(i0 + 1) == 1
09 && this._text.charCodeAt(i0 + 2) == 112 && this._text.charCodeAt(i0 + 3) == 1
08 && this._text.charCodeAt(i0 + 4) == 101 && this._text.charCodeAt(i0 + 5) == 1
09 && this._text.charCodeAt(i0 + 6) == 101 && this._text.charCodeAt(i0 + 7) == 1
10 && this._text.charCodeAt(i0 + 8) == 116 && this._text.charCodeAt(i0 + 9) == 1
15) return 77/*TokenKind.IMPLEMENTS*/; | 7259 if (this._text.charCodeAt(i0) == 105 && this._text.charCodeAt(i0 + 1) == 1
09 && this._text.charCodeAt(i0 + 2) == 112 && this._text.charCodeAt(i0 + 3) == 1
08 && this._text.charCodeAt(i0 + 4) == 101 && this._text.charCodeAt(i0 + 5) == 1
09 && this._text.charCodeAt(i0 + 6) == 101 && this._text.charCodeAt(i0 + 7) == 1
10 && this._text.charCodeAt(i0 + 8) == 116 && this._text.charCodeAt(i0 + 9) == 1
15) return 77/*TokenKind.IMPLEMENTS*/; |
| 7238 return 70/*TokenKind.IDENTIFIER*/; | 7260 return 70/*TokenKind.IDENTIFIER*/; |
| 7239 | 7261 |
| 7240 default: | 7262 default: |
| 7241 | 7263 |
| 7242 return 70/*TokenKind.IDENTIFIER*/; | 7264 return 70/*TokenKind.IDENTIFIER*/; |
| 7243 | 7265 |
| 7244 } | 7266 } |
| 7245 } | 7267 } |
| 7246 Tokenizer.prototype.next$0 = Tokenizer.prototype.next; | 7268 Tokenizer.prototype.next$0 = Tokenizer.prototype.next; |
| 7247 // ********** Code for TokenizerHelpers ************** | |
| 7248 function TokenizerHelpers() { | |
| 7249 // Initializers done | |
| 7250 } | |
| 7251 TokenizerHelpers.isIdentifierStart = function(c) { | |
| 7252 return ((c >= 97 && c <= 122) || (c >= 65 && c <= 90) || c == 95); | |
| 7253 } | |
| 7254 TokenizerHelpers.isDigit = function(c) { | |
| 7255 return (c >= 48 && c <= 57); | |
| 7256 } | |
| 7257 TokenizerHelpers.isHexDigit = function(c) { | |
| 7258 return (TokenizerHelpers.isDigit(c) || (c >= 97 && c <= 102) || (c >= 65 && c
<= 70)); | |
| 7259 } | |
| 7260 TokenizerHelpers.isIdentifierPart = function(c) { | |
| 7261 return (TokenizerHelpers.isIdentifierStart(c) || TokenizerHelpers.isDigit(c) |
| c == 36); | |
| 7262 } | |
| 7263 TokenizerHelpers.isInterpIdentifierPart = function(c) { | |
| 7264 return (TokenizerHelpers.isIdentifierStart(c) || TokenizerHelpers.isDigit(c)); | |
| 7265 } | |
| 7266 // ********** Code for TokenKind ************** | 7269 // ********** Code for TokenKind ************** |
| 7267 function TokenKind() {} | 7270 function TokenKind() {} |
| 7268 TokenKind.kindToString = function(kind) { | 7271 TokenKind.kindToString = function(kind) { |
| 7269 switch (kind) { | 7272 switch (kind) { |
| 7270 case 1/*TokenKind.END_OF_FILE*/: | 7273 case 1/*TokenKind.END_OF_FILE*/: |
| 7271 | 7274 |
| 7272 return "end of file"; | 7275 return "end of file"; |
| 7273 | 7276 |
| 7274 case 2/*TokenKind.LPAREN*/: | 7277 case 2/*TokenKind.LPAREN*/: |
| 7275 | 7278 |
| (...skipping 810 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8086 this._afterParens = []; | 8089 this._afterParens = []; |
| 8087 } | 8090 } |
| 8088 Parser.prototype.get$enableAwait = function() { | 8091 Parser.prototype.get$enableAwait = function() { |
| 8089 return $globals.experimentalAwaitPhase != null; | 8092 return $globals.experimentalAwaitPhase != null; |
| 8090 } | 8093 } |
| 8091 Parser.prototype.isPrematureEndOfFile = function() { | 8094 Parser.prototype.isPrematureEndOfFile = function() { |
| 8092 if (this.throwOnIncomplete && this._maybeEat(1/*TokenKind.END_OF_FILE*/) || th
is._maybeEat(68/*TokenKind.INCOMPLETE_MULTILINE_STRING_DQ*/) || this._maybeEat(6
9/*TokenKind.INCOMPLETE_MULTILINE_STRING_SQ*/)) { | 8095 if (this.throwOnIncomplete && this._maybeEat(1/*TokenKind.END_OF_FILE*/) || th
is._maybeEat(68/*TokenKind.INCOMPLETE_MULTILINE_STRING_DQ*/) || this._maybeEat(6
9/*TokenKind.INCOMPLETE_MULTILINE_STRING_SQ*/)) { |
| 8093 $throw(new IncompleteSourceException(this._previousToken)); | 8096 $throw(new IncompleteSourceException(this._previousToken)); |
| 8094 } | 8097 } |
| 8095 else if (this._maybeEat(1/*TokenKind.END_OF_FILE*/)) { | 8098 else if (this._maybeEat(1/*TokenKind.END_OF_FILE*/)) { |
| 8096 this._error('unexpected end of file', this._peekToken.get$span()); | 8099 this._lang_error('unexpected end of file', this._peekToken.get$span()); |
| 8097 return true; | 8100 return true; |
| 8098 } | 8101 } |
| 8099 else { | 8102 else { |
| 8100 return false; | 8103 return false; |
| 8101 } | 8104 } |
| 8102 } | 8105 } |
| 8103 Parser.prototype._recoverTo = function(kind1, kind2, kind3) { | 8106 Parser.prototype._recoverTo = function(kind1, kind2, kind3) { |
| 8104 while (!this.isPrematureEndOfFile()) { | 8107 while (!this.isPrematureEndOfFile()) { |
| 8105 var kind = this._peek(); | 8108 var kind = this._peek(); |
| 8106 if (kind == kind1 || kind == kind2 || kind == kind3) { | 8109 if (kind == kind1 || kind == kind2 || kind == kind3) { |
| 8107 this._recover = false; | 8110 this._recover = false; |
| 8108 return true; | 8111 return true; |
| 8109 } | 8112 } |
| 8110 this._next(); | 8113 this._lang_next(); |
| 8111 } | 8114 } |
| 8112 return false; | 8115 return false; |
| 8113 } | 8116 } |
| 8114 Parser.prototype._peek = function() { | 8117 Parser.prototype._peek = function() { |
| 8115 return this._peekToken.kind; | 8118 return this._peekToken.kind; |
| 8116 } | 8119 } |
| 8117 Parser.prototype._next = function() { | 8120 Parser.prototype._lang_next = function() { |
| 8118 this._previousToken = this._peekToken; | 8121 this._previousToken = this._peekToken; |
| 8119 this._peekToken = this.tokenizer.next(); | 8122 this._peekToken = this.tokenizer.next(); |
| 8120 return this._previousToken; | 8123 return this._previousToken; |
| 8121 } | 8124 } |
| 8122 Parser.prototype._peekKind = function(kind) { | 8125 Parser.prototype._peekKind = function(kind) { |
| 8123 return this._peekToken.kind == kind; | 8126 return this._peekToken.kind == kind; |
| 8124 } | 8127 } |
| 8125 Parser.prototype._peekIdentifier = function() { | 8128 Parser.prototype._peekIdentifier = function() { |
| 8126 return this._isIdentifier(this._peekToken.kind); | 8129 return this._isIdentifier(this._peekToken.kind); |
| 8127 } | 8130 } |
| (...skipping 14 matching lines...) Expand all Loading... |
| 8142 if (!this._maybeEat(kind)) { | 8145 if (!this._maybeEat(kind)) { |
| 8143 this._errorExpected(TokenKind.kindToString(kind)); | 8146 this._errorExpected(TokenKind.kindToString(kind)); |
| 8144 } | 8147 } |
| 8145 } | 8148 } |
| 8146 Parser.prototype._eatSemicolon = function() { | 8149 Parser.prototype._eatSemicolon = function() { |
| 8147 if (this.optionalSemicolons && this._peekKind(1/*TokenKind.END_OF_FILE*/)) ret
urn; | 8150 if (this.optionalSemicolons && this._peekKind(1/*TokenKind.END_OF_FILE*/)) ret
urn; |
| 8148 this._eat(10/*TokenKind.SEMICOLON*/); | 8151 this._eat(10/*TokenKind.SEMICOLON*/); |
| 8149 } | 8152 } |
| 8150 Parser.prototype._errorExpected = function(expected) { | 8153 Parser.prototype._errorExpected = function(expected) { |
| 8151 if (this.throwOnIncomplete) this.isPrematureEndOfFile(); | 8154 if (this.throwOnIncomplete) this.isPrematureEndOfFile(); |
| 8152 var tok = this._next(); | 8155 var tok = this._lang_next(); |
| 8153 var message = ('expected ' + expected + ', but found ' + tok); | 8156 var message = ('expected ' + expected + ', but found ' + tok); |
| 8154 this._error(message, tok.get$span()); | 8157 this._lang_error(message, tok.get$span()); |
| 8155 } | 8158 } |
| 8156 Parser.prototype._error = function(message, location) { | 8159 Parser.prototype._lang_error = function(message, location) { |
| 8157 if (this._recover) return; | 8160 if (this._recover) return; |
| 8158 if (location == null) { | 8161 if (location == null) { |
| 8159 location = this._peekToken.get$span(); | 8162 location = this._peekToken.get$span(); |
| 8160 } | 8163 } |
| 8161 $globals.world.fatal(message, location); | 8164 $globals.world.fatal(message, location); |
| 8162 this._recover = true; | 8165 this._recover = true; |
| 8163 } | 8166 } |
| 8164 Parser.prototype._skipBlock = function() { | 8167 Parser.prototype._skipBlock = function() { |
| 8165 var depth = 1; | 8168 var depth = 1; |
| 8166 this._eat(6/*TokenKind.LBRACE*/); | 8169 this._eat(6/*TokenKind.LBRACE*/); |
| 8167 while (true) { | 8170 while (true) { |
| 8168 var tok = this._next(); | 8171 var tok = this._lang_next(); |
| 8169 if ($eq(tok.get$kind(), 6/*TokenKind.LBRACE*/)) { | 8172 if ($eq(tok.get$kind(), 6/*TokenKind.LBRACE*/)) { |
| 8170 depth += 1; | 8173 depth += 1; |
| 8171 } | 8174 } |
| 8172 else if ($eq(tok.get$kind(), 7/*TokenKind.RBRACE*/)) { | 8175 else if ($eq(tok.get$kind(), 7/*TokenKind.RBRACE*/)) { |
| 8173 depth -= 1; | 8176 depth -= 1; |
| 8174 if (depth == 0) return; | 8177 if (depth == 0) return; |
| 8175 } | 8178 } |
| 8176 else if ($eq(tok.get$kind(), 1/*TokenKind.END_OF_FILE*/)) { | 8179 else if ($eq(tok.get$kind(), 1/*TokenKind.END_OF_FILE*/)) { |
| 8177 this._error('unexpected end of file during diet parse', tok.get$span()); | 8180 this._lang_error('unexpected end of file during diet parse', tok.get$span(
)); |
| 8178 return; | 8181 return; |
| 8179 } | 8182 } |
| 8180 } | 8183 } |
| 8181 } | 8184 } |
| 8182 Parser.prototype._makeSpan = function(start) { | 8185 Parser.prototype._makeSpan = function(start) { |
| 8183 return new SourceSpan(this.source, start, this._previousToken.end); | 8186 return new SourceSpan(this.source, start, this._previousToken.end); |
| 8184 } | 8187 } |
| 8185 Parser.prototype.compilationUnit = function() { | 8188 Parser.prototype.compilationUnit = function() { |
| 8186 var ret = []; | 8189 var ret = []; |
| 8187 this._maybeEat(13/*TokenKind.HASHBANG*/); | 8190 this._maybeEat(13/*TokenKind.HASHBANG*/); |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8308 } | 8311 } |
| 8309 else { | 8312 else { |
| 8310 return this.block(); | 8313 return this.block(); |
| 8311 } | 8314 } |
| 8312 } | 8315 } |
| 8313 else if (!inExpression) { | 8316 else if (!inExpression) { |
| 8314 if (this._maybeEat(10/*TokenKind.SEMICOLON*/)) { | 8317 if (this._maybeEat(10/*TokenKind.SEMICOLON*/)) { |
| 8315 return null; | 8318 return null; |
| 8316 } | 8319 } |
| 8317 } | 8320 } |
| 8318 this._error('Expected function body (neither { nor => found)'); | 8321 this._lang_error('Expected function body (neither { nor => found)'); |
| 8319 } | 8322 } |
| 8320 Parser.prototype.finishField = function(start, modifiers, typeParams, type, name
, value) { | 8323 Parser.prototype.finishField = function(start, modifiers, typeParams, type, name
, value) { |
| 8321 if (typeParams != null) { | 8324 if (typeParams != null) { |
| 8322 $globals.world.internalError('trying to create a generic field', this._makeS
pan(start)); | 8325 $globals.world.internalError('trying to create a generic field', this._makeS
pan(start)); |
| 8323 } | 8326 } |
| 8324 var names = [name]; | 8327 var names = [name]; |
| 8325 var values = [value]; | 8328 var values = [value]; |
| 8326 while (this._maybeEat(11/*TokenKind.COMMA*/)) { | 8329 while (this._maybeEat(11/*TokenKind.COMMA*/)) { |
| 8327 names.add$1(this.identifier()); | 8330 names.add$1(this.identifier()); |
| 8328 if (this._maybeEat(20/*TokenKind.ASSIGN*/)) { | 8331 if (this._maybeEat(20/*TokenKind.ASSIGN*/)) { |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8375 Parser.prototype.declaration = function(includeOperators) { | 8378 Parser.prototype.declaration = function(includeOperators) { |
| 8376 var start = this._peekToken.start; | 8379 var start = this._peekToken.start; |
| 8377 if (this._peekKind(75/*TokenKind.FACTORY*/)) { | 8380 if (this._peekKind(75/*TokenKind.FACTORY*/)) { |
| 8378 return this.factoryConstructorDeclaration(); | 8381 return this.factoryConstructorDeclaration(); |
| 8379 } | 8382 } |
| 8380 var modifiers = this._readModifiers(); | 8383 var modifiers = this._readModifiers(); |
| 8381 return this.finishDefinition(start, modifiers, this.declaredIdentifier(include
Operators), null); | 8384 return this.finishDefinition(start, modifiers, this.declaredIdentifier(include
Operators), null); |
| 8382 } | 8385 } |
| 8383 Parser.prototype.factoryConstructorDeclaration = function() { | 8386 Parser.prototype.factoryConstructorDeclaration = function() { |
| 8384 var start = this._peekToken.start; | 8387 var start = this._peekToken.start; |
| 8385 var factoryToken = this._next(); | 8388 var factoryToken = this._lang_next(); |
| 8386 var names = [this.identifier()]; | 8389 var names = [this.identifier()]; |
| 8387 while (this._maybeEat(14/*TokenKind.DOT*/)) { | 8390 while (this._maybeEat(14/*TokenKind.DOT*/)) { |
| 8388 names.add$1(this.identifier()); | 8391 names.add$1(this.identifier()); |
| 8389 } | 8392 } |
| 8390 var typeParams = null; | 8393 var typeParams = null; |
| 8391 if (this._peekKind(52/*TokenKind.LT*/)) { | 8394 if (this._peekKind(52/*TokenKind.LT*/)) { |
| 8392 typeParams = this.typeParameters(); | 8395 typeParams = this.typeParameters(); |
| 8393 } | 8396 } |
| 8394 var name = null; | 8397 var name = null; |
| 8395 var type = null; | 8398 var type = null; |
| 8396 if (this._maybeEat(14/*TokenKind.DOT*/)) { | 8399 if (this._maybeEat(14/*TokenKind.DOT*/)) { |
| 8397 name = this.identifier(); | 8400 name = this.identifier(); |
| 8398 } | 8401 } |
| 8399 else if (typeParams == null) { | 8402 else if (typeParams == null) { |
| 8400 if (names.length > 1) { | 8403 if (names.length > 1) { |
| 8401 name = names.removeLast$0(); | 8404 name = names.removeLast$0(); |
| 8402 } | 8405 } |
| 8403 else { | 8406 else { |
| 8404 name = new Identifier('', names.$index(0).get$span()); | 8407 name = new Identifier('', names.$index(0).get$span()); |
| 8405 } | 8408 } |
| 8406 } | 8409 } |
| 8407 else { | 8410 else { |
| 8408 name = new Identifier('', names.$index(0).get$span()); | 8411 name = new Identifier('', names.$index(0).get$span()); |
| 8409 } | 8412 } |
| 8410 if (names.length > 1) { | 8413 if (names.length > 1) { |
| 8411 this._error('unsupported qualified name for factory', names.$index(0).get$sp
an()); | 8414 this._lang_error('unsupported qualified name for factory', names.$index(0).g
et$span()); |
| 8412 } | 8415 } |
| 8413 type = new NameTypeReference(false, names.$index(0), null, names.$index(0).get
$span()); | 8416 type = new NameTypeReference(false, names.$index(0), null, names.$index(0).get
$span()); |
| 8414 var di = new DeclaredIdentifier(type, name, this._makeSpan(start)); | 8417 var di = new DeclaredIdentifier(type, name, this._makeSpan(start)); |
| 8415 return this.finishDefinition(start, [factoryToken], di, typeParams); | 8418 return this.finishDefinition(start, [factoryToken], di, typeParams); |
| 8416 } | 8419 } |
| 8417 Parser.prototype.statement = function() { | 8420 Parser.prototype.statement = function() { |
| 8418 switch (this._peek()) { | 8421 switch (this._peek()) { |
| 8419 case 89/*TokenKind.BREAK*/: | 8422 case 89/*TokenKind.BREAK*/: |
| 8420 | 8423 |
| 8421 return this.breakStatement(); | 8424 return this.breakStatement(); |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8680 } | 8683 } |
| 8681 else if (this._maybeEat(94/*TokenKind.DEFAULT*/)) { | 8684 else if (this._maybeEat(94/*TokenKind.DEFAULT*/)) { |
| 8682 cases.add$1(); | 8685 cases.add$1(); |
| 8683 this._eat(8/*TokenKind.COLON*/); | 8686 this._eat(8/*TokenKind.COLON*/); |
| 8684 } | 8687 } |
| 8685 else { | 8688 else { |
| 8686 break; | 8689 break; |
| 8687 } | 8690 } |
| 8688 } | 8691 } |
| 8689 if ($eq(cases.length, 0)) { | 8692 if ($eq(cases.length, 0)) { |
| 8690 this._error('case or default'); | 8693 this._lang_error('case or default'); |
| 8691 } | 8694 } |
| 8692 var stmts = []; | 8695 var stmts = []; |
| 8693 while (!this._peekCaseEnd()) { | 8696 while (!this._peekCaseEnd()) { |
| 8694 stmts.add$1(this.statement()); | 8697 stmts.add$1(this.statement()); |
| 8695 if (this._recover && !this._recoverTo(7/*TokenKind.RBRACE*/, 90/*TokenKind.C
ASE*/, 94/*TokenKind.DEFAULT*/)) { | 8698 if (this._recover && !this._recoverTo(7/*TokenKind.RBRACE*/, 90/*TokenKind.C
ASE*/, 94/*TokenKind.DEFAULT*/)) { |
| 8696 break; | 8699 break; |
| 8697 } | 8700 } |
| 8698 } | 8701 } |
| 8699 return new CaseNode(label, cases, stmts, this._makeSpan(start)); | 8702 return new CaseNode(label, cases, stmts, this._makeSpan(start)); |
| 8700 } | 8703 } |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8765 if (type.get$names() == null) { | 8768 if (type.get$names() == null) { |
| 8766 type.set$names([expr.get$name()]); | 8769 type.set$names([expr.get$name()]); |
| 8767 } | 8770 } |
| 8768 else { | 8771 else { |
| 8769 type.get$names().add$1(expr.get$name()); | 8772 type.get$names().add$1(expr.get$name()); |
| 8770 } | 8773 } |
| 8771 type.set$span(expr.get$span()); | 8774 type.set$span(expr.get$span()); |
| 8772 return type; | 8775 return type; |
| 8773 } | 8776 } |
| 8774 else { | 8777 else { |
| 8775 this._error('expected type reference'); | 8778 this._lang_error('expected type reference'); |
| 8776 return null; | 8779 return null; |
| 8777 } | 8780 } |
| 8778 } | 8781 } |
| 8779 Parser.prototype.infixExpression = function(precedence) { | 8782 Parser.prototype.infixExpression = function(precedence) { |
| 8780 return this.finishInfixExpression(this.unaryExpression(), precedence); | 8783 return this.finishInfixExpression(this.unaryExpression(), precedence); |
| 8781 } | 8784 } |
| 8782 Parser.prototype._finishDeclaredId = function(type) { | 8785 Parser.prototype._finishDeclaredId = function(type) { |
| 8783 var name = this.identifier(); | 8786 var name = this.identifier(); |
| 8784 return this.finishPostfixExpression(new DeclaredIdentifier(type, name, this._m
akeSpan(type.get$span().get$start()))); | 8787 return this.finishPostfixExpression(new DeclaredIdentifier(type, name, this._m
akeSpan(type.get$span().get$start()))); |
| 8785 } | 8788 } |
| (...skipping 25 matching lines...) Expand all Loading... |
| 8811 Parser.prototype.finishInfixExpression = function(x, precedence) { | 8814 Parser.prototype.finishInfixExpression = function(x, precedence) { |
| 8812 while (true) { | 8815 while (true) { |
| 8813 var kind = this._peek(); | 8816 var kind = this._peek(); |
| 8814 var prec = TokenKind.infixPrecedence(this._peek()); | 8817 var prec = TokenKind.infixPrecedence(this._peek()); |
| 8815 if (prec >= precedence) { | 8818 if (prec >= precedence) { |
| 8816 if (kind == 52/*TokenKind.LT*/ || kind == 53/*TokenKind.GT*/) { | 8819 if (kind == 52/*TokenKind.LT*/ || kind == 53/*TokenKind.GT*/) { |
| 8817 if (this._isBin(x, 52/*TokenKind.LT*/)) { | 8820 if (this._isBin(x, 52/*TokenKind.LT*/)) { |
| 8818 return this._fixAsType(x); | 8821 return this._fixAsType(x); |
| 8819 } | 8822 } |
| 8820 } | 8823 } |
| 8821 var op = this._next(); | 8824 var op = this._lang_next(); |
| 8822 if ($eq(op.get$kind(), 103/*TokenKind.IS*/)) { | 8825 if ($eq(op.get$kind(), 103/*TokenKind.IS*/)) { |
| 8823 var isTrue = !this._maybeEat(19/*TokenKind.NOT*/); | 8826 var isTrue = !this._maybeEat(19/*TokenKind.NOT*/); |
| 8824 var typeRef = this.type(0); | 8827 var typeRef = this.type(0); |
| 8825 x = new IsExpression(isTrue, x, typeRef, this._makeSpan(x.span.start)); | 8828 x = new IsExpression(isTrue, x, typeRef, this._makeSpan(x.span.start)); |
| 8826 continue; | 8829 continue; |
| 8827 } | 8830 } |
| 8828 var y = this.infixExpression($eq(prec, 2) ? prec : prec + 1); | 8831 var y = this.infixExpression($eq(prec, 2) ? prec : prec + 1); |
| 8829 if ($eq(op.get$kind(), 33/*TokenKind.CONDITIONAL*/)) { | 8832 if ($eq(op.get$kind(), 33/*TokenKind.CONDITIONAL*/)) { |
| 8830 this._eat(8/*TokenKind.COLON*/); | 8833 this._eat(8/*TokenKind.COLON*/); |
| 8831 var z = this.infixExpression(prec); | 8834 var z = this.infixExpression(prec); |
| (...skipping 22 matching lines...) Expand all Loading... |
| 8854 | 8857 |
| 8855 default: | 8858 default: |
| 8856 | 8859 |
| 8857 return false; | 8860 return false; |
| 8858 | 8861 |
| 8859 } | 8862 } |
| 8860 } | 8863 } |
| 8861 Parser.prototype.unaryExpression = function() { | 8864 Parser.prototype.unaryExpression = function() { |
| 8862 var start = this._peekToken.start; | 8865 var start = this._peekToken.start; |
| 8863 if (this._isPrefixUnaryOperator(this._peek())) { | 8866 if (this._isPrefixUnaryOperator(this._peek())) { |
| 8864 var tok = this._next(); | 8867 var tok = this._lang_next(); |
| 8865 var expr = this.unaryExpression(); | 8868 var expr = this.unaryExpression(); |
| 8866 return new UnaryExpression(tok, expr, this._makeSpan(start)); | 8869 return new UnaryExpression(tok, expr, this._makeSpan(start)); |
| 8867 } | 8870 } |
| 8868 else if (this.get$enableAwait() && this._maybeEat(88/*TokenKind.AWAIT*/)) { | 8871 else if (this.get$enableAwait() && this._maybeEat(88/*TokenKind.AWAIT*/)) { |
| 8869 var expr = this.unaryExpression(); | 8872 var expr = this.unaryExpression(); |
| 8870 return new AwaitExpression(expr, this._makeSpan(start)); | 8873 return new AwaitExpression(expr, this._makeSpan(start)); |
| 8871 } | 8874 } |
| 8872 return this.finishPostfixExpression(this.primary()); | 8875 return this.finishPostfixExpression(this.primary()); |
| 8873 } | 8876 } |
| 8874 Parser.prototype.argument = function() { | 8877 Parser.prototype.argument = function() { |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 8919 case 14/*TokenKind.DOT*/: | 8922 case 14/*TokenKind.DOT*/: |
| 8920 | 8923 |
| 8921 this._eat(14/*TokenKind.DOT*/); | 8924 this._eat(14/*TokenKind.DOT*/); |
| 8922 var name = this.identifier(); | 8925 var name = this.identifier(); |
| 8923 var ret = new DotExpression(expr, name, this._makeSpan(expr.get$span().get
$start())); | 8926 var ret = new DotExpression(expr, name, this._makeSpan(expr.get$span().get
$start())); |
| 8924 return this.finishPostfixExpression(ret); | 8927 return this.finishPostfixExpression(ret); |
| 8925 | 8928 |
| 8926 case 16/*TokenKind.INCR*/: | 8929 case 16/*TokenKind.INCR*/: |
| 8927 case 17/*TokenKind.DECR*/: | 8930 case 17/*TokenKind.DECR*/: |
| 8928 | 8931 |
| 8929 var tok = this._next(); | 8932 var tok = this._lang_next(); |
| 8930 return new PostfixExpression(expr, tok, this._makeSpan(expr.get$span().get
$start())); | 8933 return new PostfixExpression(expr, tok, this._makeSpan(expr.get$span().get
$start())); |
| 8931 | 8934 |
| 8932 case 9/*TokenKind.ARROW*/: | 8935 case 9/*TokenKind.ARROW*/: |
| 8933 case 6/*TokenKind.LBRACE*/: | 8936 case 6/*TokenKind.LBRACE*/: |
| 8934 | 8937 |
| 8935 return expr; | 8938 return expr; |
| 8936 | 8939 |
| 8937 default: | 8940 default: |
| 8938 | 8941 |
| 8939 if (this._peekIdentifier()) { | 8942 if (this._peekIdentifier()) { |
| 8940 return this.finishPostfixExpression(new DeclaredIdentifier(this._makeTyp
e(expr), this.identifier(), this._makeSpan(expr.get$span().get$start()))); | 8943 return this.finishPostfixExpression(new DeclaredIdentifier(this._makeTyp
e(expr), this.identifier(), this._makeSpan(expr.get$span().get$start()))); |
| 8941 } | 8944 } |
| 8942 else { | 8945 else { |
| 8943 return expr; | 8946 return expr; |
| 8944 } | 8947 } |
| 8945 | 8948 |
| 8946 } | 8949 } |
| 8947 } | 8950 } |
| 8948 Parser.prototype.finishCallOrLambdaExpression = function(expr) { | 8951 Parser.prototype.finishCallOrLambdaExpression = function(expr) { |
| 8949 if (this._atClosureParameters()) { | 8952 if (this._atClosureParameters()) { |
| 8950 var formals = this.formalParameterList(); | 8953 var formals = this.formalParameterList(); |
| 8951 var body = this.functionBody(true); | 8954 var body = this.functionBody(true); |
| 8952 return this._makeFunction(expr, formals, body); | 8955 return this._makeFunction(expr, formals, body); |
| 8953 } | 8956 } |
| 8954 else { | 8957 else { |
| 8955 if ((expr instanceof DeclaredIdentifier)) { | 8958 if ((expr instanceof DeclaredIdentifier)) { |
| 8956 this._error('illegal target for call, did you mean to declare a function?'
, expr.get$span()); | 8959 this._lang_error('illegal target for call, did you mean to declare a funct
ion?', expr.get$span()); |
| 8957 } | 8960 } |
| 8958 var args = this.arguments(); | 8961 var args = this.arguments(); |
| 8959 return this.finishPostfixExpression(new CallExpression(expr, args, this._mak
eSpan(expr.get$span().get$start()))); | 8962 return this.finishPostfixExpression(new CallExpression(expr, args, this._mak
eSpan(expr.get$span().get$start()))); |
| 8960 } | 8963 } |
| 8961 } | 8964 } |
| 8962 Parser.prototype._isBin = function(expr, kind) { | 8965 Parser.prototype._isBin = function(expr, kind) { |
| 8963 return (expr instanceof BinaryExpression) && $eq(expr.get$op().get$kind(), kin
d); | 8966 return (expr instanceof BinaryExpression) && $eq(expr.get$op().get$kind(), kin
d); |
| 8964 } | 8967 } |
| 8965 Parser.prototype._boolTypeRef = function(span) { | 8968 Parser.prototype._boolTypeRef = function(span) { |
| 8966 return new TypeReference(span, $globals.world.nonNullBool); | 8969 return new TypeReference(span, $globals.world.nonNullBool); |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9031 this._eat(111/*TokenKind.TRUE*/); | 9034 this._eat(111/*TokenKind.TRUE*/); |
| 9032 return new LiteralExpression(true, this._boolTypeRef(this._makeSpan(start)
), 'true', this._makeSpan(start)); | 9035 return new LiteralExpression(true, this._boolTypeRef(this._makeSpan(start)
), 'true', this._makeSpan(start)); |
| 9033 | 9036 |
| 9034 case 97/*TokenKind.FALSE*/: | 9037 case 97/*TokenKind.FALSE*/: |
| 9035 | 9038 |
| 9036 this._eat(97/*TokenKind.FALSE*/); | 9039 this._eat(97/*TokenKind.FALSE*/); |
| 9037 return new LiteralExpression(false, this._boolTypeRef(this._makeSpan(start
)), 'false', this._makeSpan(start)); | 9040 return new LiteralExpression(false, this._boolTypeRef(this._makeSpan(start
)), 'false', this._makeSpan(start)); |
| 9038 | 9041 |
| 9039 case 61/*TokenKind.HEX_INTEGER*/: | 9042 case 61/*TokenKind.HEX_INTEGER*/: |
| 9040 | 9043 |
| 9041 var t = this._next(); | 9044 var t = this._lang_next(); |
| 9042 return new LiteralExpression(Parser.parseHex(t.get$text().substring$1(2)),
this._intTypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); | 9045 return new LiteralExpression(Parser.parseHex(t.get$text().substring$1(2)),
this._intTypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| 9043 | 9046 |
| 9044 case 60/*TokenKind.INTEGER*/: | 9047 case 60/*TokenKind.INTEGER*/: |
| 9045 | 9048 |
| 9046 var t = this._next(); | 9049 var t = this._lang_next(); |
| 9047 return new LiteralExpression(Math.parseInt(t.get$text()), this._intTypeRef
(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); | 9050 return new LiteralExpression(Math.parseInt(t.get$text()), this._intTypeRef
(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| 9048 | 9051 |
| 9049 case 62/*TokenKind.DOUBLE*/: | 9052 case 62/*TokenKind.DOUBLE*/: |
| 9050 | 9053 |
| 9051 var t = this._next(); | 9054 var t = this._lang_next(); |
| 9052 return new LiteralExpression(Math.parseDouble(t.get$text()), this._doubleT
ypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); | 9055 return new LiteralExpression(Math.parseDouble(t.get$text()), this._doubleT
ypeRef(this._makeSpan(start)), t.get$text(), this._makeSpan(start)); |
| 9053 | 9056 |
| 9054 case 58/*TokenKind.STRING*/: | 9057 case 58/*TokenKind.STRING*/: |
| 9055 | 9058 |
| 9056 return this.stringLiteralExpr(); | 9059 return this.stringLiteralExpr(); |
| 9057 | 9060 |
| 9058 case 66/*TokenKind.INCOMPLETE_STRING*/: | 9061 case 66/*TokenKind.INCOMPLETE_STRING*/: |
| 9059 | 9062 |
| 9060 return this.stringInterpolation(); | 9063 return this.stringInterpolation(); |
| 9061 | 9064 |
| (...skipping 14 matching lines...) Expand all Loading... |
| 9076 } | 9079 } |
| 9077 return new VarExpression(this.identifier(), this._makeSpan(start)); | 9080 return new VarExpression(this.identifier(), this._makeSpan(start)); |
| 9078 | 9081 |
| 9079 } | 9082 } |
| 9080 } | 9083 } |
| 9081 Parser.prototype.stringInterpolation = function() { | 9084 Parser.prototype.stringInterpolation = function() { |
| 9082 var start = this._peekToken.start; | 9085 var start = this._peekToken.start; |
| 9083 var lits = []; | 9086 var lits = []; |
| 9084 var startQuote = null, endQuote = null; | 9087 var startQuote = null, endQuote = null; |
| 9085 while (this._peekKind(66/*TokenKind.INCOMPLETE_STRING*/)) { | 9088 while (this._peekKind(66/*TokenKind.INCOMPLETE_STRING*/)) { |
| 9086 var token = this._next(); | 9089 var token = this._lang_next(); |
| 9087 var text = token.get$text(); | 9090 var text = token.get$text(); |
| 9088 if (startQuote == null) { | 9091 if (startQuote == null) { |
| 9089 if (isMultilineString(text)) { | 9092 if (isMultilineString(text)) { |
| 9090 endQuote = text.substring$2(0, 3); | 9093 endQuote = text.substring$2(0, 3); |
| 9091 startQuote = endQuote + '\n'; | 9094 startQuote = endQuote + '\n'; |
| 9092 } | 9095 } |
| 9093 else { | 9096 else { |
| 9094 startQuote = endQuote = text.$index(0); | 9097 startQuote = endQuote = text.$index(0); |
| 9095 } | 9098 } |
| 9096 text = text.substring$2(0, text.length - 1) + endQuote; | 9099 text = text.substring$2(0, text.length - 1) + endQuote; |
| 9097 } | 9100 } |
| 9098 else { | 9101 else { |
| 9099 text = startQuote + text.substring$2(0, text.length - 1) + endQuote; | 9102 text = startQuote + text.substring$2(0, text.length - 1) + endQuote; |
| 9100 } | 9103 } |
| 9101 lits.add$1(this.makeStringLiteral(text, token.get$span())); | 9104 lits.add$1(this.makeStringLiteral(text, token.get$span())); |
| 9102 if (this._maybeEat(6/*TokenKind.LBRACE*/)) { | 9105 if (this._maybeEat(6/*TokenKind.LBRACE*/)) { |
| 9103 lits.add$1(this.expression()); | 9106 lits.add$1(this.expression()); |
| 9104 this._eat(7/*TokenKind.RBRACE*/); | 9107 this._eat(7/*TokenKind.RBRACE*/); |
| 9105 } | 9108 } |
| 9106 else if (this._maybeEat(109/*TokenKind.THIS*/)) { | 9109 else if (this._maybeEat(109/*TokenKind.THIS*/)) { |
| 9107 lits.add$1(new ThisExpression(this._previousToken.get$span())); | 9110 lits.add$1(new ThisExpression(this._previousToken.get$span())); |
| 9108 } | 9111 } |
| 9109 else { | 9112 else { |
| 9110 var id = this.identifier(); | 9113 var id = this.identifier(); |
| 9111 lits.add$1(new VarExpression(id, id.get$span())); | 9114 lits.add$1(new VarExpression(id, id.get$span())); |
| 9112 } | 9115 } |
| 9113 } | 9116 } |
| 9114 var tok = this._next(); | 9117 var tok = this._lang_next(); |
| 9115 if ($ne(tok.get$kind(), 58/*TokenKind.STRING*/)) { | 9118 if ($ne(tok.get$kind(), 58/*TokenKind.STRING*/)) { |
| 9116 this._errorExpected('interpolated string'); | 9119 this._errorExpected('interpolated string'); |
| 9117 } | 9120 } |
| 9118 var text = startQuote + tok.get$text(); | 9121 var text = startQuote + tok.get$text(); |
| 9119 lits.add$1(this.makeStringLiteral(text, tok.get$span())); | 9122 lits.add$1(this.makeStringLiteral(text, tok.get$span())); |
| 9120 var span = this._makeSpan(start); | 9123 var span = this._makeSpan(start); |
| 9121 return new LiteralExpression(lits, this._stringTypeRef(span), '\$\$\$', span); | 9124 return new LiteralExpression(lits, this._stringTypeRef(span), '\$\$\$', span); |
| 9122 } | 9125 } |
| 9123 Parser.prototype.makeStringLiteral = function(text, span) { | 9126 Parser.prototype.makeStringLiteral = function(text, span) { |
| 9124 return new LiteralExpression(text, this._stringTypeRef(span), text, span); | 9127 return new LiteralExpression(text, this._stringTypeRef(span), text, span); |
| 9125 } | 9128 } |
| 9126 Parser.prototype.stringLiteralExpr = function() { | 9129 Parser.prototype.stringLiteralExpr = function() { |
| 9127 var token = this._next(); | 9130 var token = this._lang_next(); |
| 9128 return this.makeStringLiteral(token.get$text(), token.get$span()); | 9131 return this.makeStringLiteral(token.get$text(), token.get$span()); |
| 9129 } | 9132 } |
| 9130 Parser.prototype.maybeStringLiteral = function() { | 9133 Parser.prototype.maybeStringLiteral = function() { |
| 9131 var kind = this._peek(); | 9134 var kind = this._peek(); |
| 9132 if ($eq(kind, 58/*TokenKind.STRING*/)) { | 9135 if ($eq(kind, 58/*TokenKind.STRING*/)) { |
| 9133 return parseStringLiteral(this._next().get$text()); | 9136 return parseStringLiteral(this._lang_next().get$text()); |
| 9134 } | 9137 } |
| 9135 else if ($eq(kind, 59/*TokenKind.STRING_PART*/)) { | 9138 else if ($eq(kind, 59/*TokenKind.STRING_PART*/)) { |
| 9136 this._next(); | 9139 this._lang_next(); |
| 9137 this._errorExpected('string literal, but found interpolated string start'); | 9140 this._errorExpected('string literal, but found interpolated string start'); |
| 9138 } | 9141 } |
| 9139 else if ($eq(kind, 66/*TokenKind.INCOMPLETE_STRING*/)) { | 9142 else if ($eq(kind, 66/*TokenKind.INCOMPLETE_STRING*/)) { |
| 9140 this._next(); | 9143 this._lang_next(); |
| 9141 this._errorExpected('string literal, but found incomplete string'); | 9144 this._errorExpected('string literal, but found incomplete string'); |
| 9142 } | 9145 } |
| 9143 return null; | 9146 return null; |
| 9144 } | 9147 } |
| 9145 Parser.prototype._parenOrLambda = function() { | 9148 Parser.prototype._parenOrLambda = function() { |
| 9146 var start = this._peekToken.start; | 9149 var start = this._peekToken.start; |
| 9147 if (this._atClosureParameters()) { | 9150 if (this._atClosureParameters()) { |
| 9148 var formals = this.formalParameterList(); | 9151 var formals = this.formalParameterList(); |
| 9149 var body = this.functionBody(true); | 9152 var body = this.functionBody(true); |
| 9150 var func = new FunctionDefinition(null, null, null, formals, null, null, nul
l, body, this._makeSpan(start)); | 9153 var func = new FunctionDefinition(null, null, null, formals, null, null, nul
l, body, this._makeSpan(start)); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 9168 Parser.prototype._eatLeftParen = function() { | 9171 Parser.prototype._eatLeftParen = function() { |
| 9169 this._eat(2/*TokenKind.LPAREN*/); | 9172 this._eat(2/*TokenKind.LPAREN*/); |
| 9170 this._afterParensIndex++; | 9173 this._afterParensIndex++; |
| 9171 } | 9174 } |
| 9172 Parser.prototype._peekAfterCloseParen = function() { | 9175 Parser.prototype._peekAfterCloseParen = function() { |
| 9173 if (this._afterParensIndex < this._afterParens.length) { | 9176 if (this._afterParensIndex < this._afterParens.length) { |
| 9174 return this._afterParens.$index(this._afterParensIndex); | 9177 return this._afterParens.$index(this._afterParensIndex); |
| 9175 } | 9178 } |
| 9176 this._afterParensIndex = 0; | 9179 this._afterParensIndex = 0; |
| 9177 this._afterParens.clear(); | 9180 this._afterParens.clear(); |
| 9178 var tokens = [this._next()]; | 9181 var tokens = [this._lang_next()]; |
| 9179 this._lookaheadAfterParens(tokens); | 9182 this._lookaheadAfterParens(tokens); |
| 9180 var after = this._peekToken; | 9183 var after = this._peekToken; |
| 9181 tokens.add$1(after); | 9184 tokens.add$1(after); |
| 9182 this.tokenizer = new DivertedTokenSource(tokens, this, this.tokenizer); | 9185 this.tokenizer = new DivertedTokenSource(tokens, this, this.tokenizer); |
| 9183 this._next(); | 9186 this._lang_next(); |
| 9184 return after; | 9187 return after; |
| 9185 } | 9188 } |
| 9186 Parser.prototype._lookaheadAfterParens = function(tokens) { | 9189 Parser.prototype._lookaheadAfterParens = function(tokens) { |
| 9187 var saved = this._afterParens.length; | 9190 var saved = this._afterParens.length; |
| 9188 this._afterParens.add(null); | 9191 this._afterParens.add(null); |
| 9189 while (true) { | 9192 while (true) { |
| 9190 var token = this._next(); | 9193 var token = this._lang_next(); |
| 9191 tokens.add(token); | 9194 tokens.add(token); |
| 9192 var kind = token.kind; | 9195 var kind = token.kind; |
| 9193 if (kind == 3/*TokenKind.RPAREN*/ || kind == 1/*TokenKind.END_OF_FILE*/) { | 9196 if (kind == 3/*TokenKind.RPAREN*/ || kind == 1/*TokenKind.END_OF_FILE*/) { |
| 9194 this._afterParens.$setindex(saved, this._peekToken); | 9197 this._afterParens.$setindex(saved, this._peekToken); |
| 9195 return; | 9198 return; |
| 9196 } | 9199 } |
| 9197 else if (kind == 2/*TokenKind.LPAREN*/) { | 9200 else if (kind == 2/*TokenKind.LPAREN*/) { |
| 9198 this._lookaheadAfterParens(tokens); | 9201 this._lookaheadAfterParens(tokens); |
| 9199 } | 9202 } |
| 9200 } | 9203 } |
| 9201 } | 9204 } |
| 9202 Parser.prototype._typeAsIdentifier = function(type) { | 9205 Parser.prototype._typeAsIdentifier = function(type) { |
| 9203 return type.get$name(); | 9206 return type.get$name(); |
| 9204 } | 9207 } |
| 9205 Parser.prototype._specialIdentifier = function(includeOperators) { | 9208 Parser.prototype._specialIdentifier = function(includeOperators) { |
| 9206 var start = this._peekToken.start; | 9209 var start = this._peekToken.start; |
| 9207 var name; | 9210 var name; |
| 9208 switch (this._peek()) { | 9211 switch (this._peek()) { |
| 9209 case 15/*TokenKind.ELLIPSIS*/: | 9212 case 15/*TokenKind.ELLIPSIS*/: |
| 9210 | 9213 |
| 9211 this._eat(15/*TokenKind.ELLIPSIS*/); | 9214 this._eat(15/*TokenKind.ELLIPSIS*/); |
| 9212 this._error('rest no longer supported', this._previousToken.get$span()); | 9215 this._lang_error('rest no longer supported', this._previousToken.get$span(
)); |
| 9213 name = this.identifier().get$name(); | 9216 name = this.identifier().get$name(); |
| 9214 break; | 9217 break; |
| 9215 | 9218 |
| 9216 case 109/*TokenKind.THIS*/: | 9219 case 109/*TokenKind.THIS*/: |
| 9217 | 9220 |
| 9218 this._eat(109/*TokenKind.THIS*/); | 9221 this._eat(109/*TokenKind.THIS*/); |
| 9219 this._eat(14/*TokenKind.DOT*/); | 9222 this._eat(14/*TokenKind.DOT*/); |
| 9220 name = ('this.' + this.identifier().get$name()); | 9223 name = ('this.' + this.identifier().get$name()); |
| 9221 break; | 9224 break; |
| 9222 | 9225 |
| (...skipping 21 matching lines...) Expand all Loading... |
| 9244 } | 9247 } |
| 9245 break; | 9248 break; |
| 9246 | 9249 |
| 9247 case 83/*TokenKind.OPERATOR*/: | 9250 case 83/*TokenKind.OPERATOR*/: |
| 9248 | 9251 |
| 9249 if (!includeOperators) return null; | 9252 if (!includeOperators) return null; |
| 9250 this._eat(83/*TokenKind.OPERATOR*/); | 9253 this._eat(83/*TokenKind.OPERATOR*/); |
| 9251 var kind = this._peek(); | 9254 var kind = this._peek(); |
| 9252 if ($eq(kind, 82/*TokenKind.NEGATE*/)) { | 9255 if ($eq(kind, 82/*TokenKind.NEGATE*/)) { |
| 9253 name = ':negate'; | 9256 name = ':negate'; |
| 9254 this._next(); | 9257 this._lang_next(); |
| 9255 } | 9258 } |
| 9256 else { | 9259 else { |
| 9257 name = TokenKind.binaryMethodName(kind); | 9260 name = TokenKind.binaryMethodName(kind); |
| 9258 if (name == null) { | 9261 if (name == null) { |
| 9259 name = 'operator'; | 9262 name = 'operator'; |
| 9260 } | 9263 } |
| 9261 else { | 9264 else { |
| 9262 this._next(); | 9265 this._lang_next(); |
| 9263 } | 9266 } |
| 9264 } | 9267 } |
| 9265 break; | 9268 break; |
| 9266 | 9269 |
| 9267 default: | 9270 default: |
| 9268 | 9271 |
| 9269 return null; | 9272 return null; |
| 9270 | 9273 |
| 9271 } | 9274 } |
| 9272 return new Identifier(name, this._makeSpan(start)); | 9275 return new Identifier(name, this._makeSpan(start)); |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9373 var modifiers = null; | 9376 var modifiers = null; |
| 9374 while (true) { | 9377 while (true) { |
| 9375 switch (this._peek()) { | 9378 switch (this._peek()) { |
| 9376 case 86/*TokenKind.STATIC*/: | 9379 case 86/*TokenKind.STATIC*/: |
| 9377 case 98/*TokenKind.FINAL*/: | 9380 case 98/*TokenKind.FINAL*/: |
| 9378 case 92/*TokenKind.CONST*/: | 9381 case 92/*TokenKind.CONST*/: |
| 9379 case 71/*TokenKind.ABSTRACT*/: | 9382 case 71/*TokenKind.ABSTRACT*/: |
| 9380 case 75/*TokenKind.FACTORY*/: | 9383 case 75/*TokenKind.FACTORY*/: |
| 9381 | 9384 |
| 9382 if (modifiers == null) modifiers = []; | 9385 if (modifiers == null) modifiers = []; |
| 9383 modifiers.add$1(this._next()); | 9386 modifiers.add$1(this._lang_next()); |
| 9384 break; | 9387 break; |
| 9385 | 9388 |
| 9386 default: | 9389 default: |
| 9387 | 9390 |
| 9388 return modifiers; | 9391 return modifiers; |
| 9389 | 9392 |
| 9390 } | 9393 } |
| 9391 } | 9394 } |
| 9392 return null; | 9395 return null; |
| 9393 } | 9396 } |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9474 } | 9477 } |
| 9475 Parser.prototype.nameTypeReference = function() { | 9478 Parser.prototype.nameTypeReference = function() { |
| 9476 var start = this._peekToken.start; | 9479 var start = this._peekToken.start; |
| 9477 var name; | 9480 var name; |
| 9478 var names = null; | 9481 var names = null; |
| 9479 var typeArgs = null; | 9482 var typeArgs = null; |
| 9480 var isFinal = false; | 9483 var isFinal = false; |
| 9481 switch (this._peek()) { | 9484 switch (this._peek()) { |
| 9482 case 114/*TokenKind.VOID*/: | 9485 case 114/*TokenKind.VOID*/: |
| 9483 | 9486 |
| 9484 return new TypeReference(this._next().get$span(), $globals.world.voidType)
; | 9487 return new TypeReference(this._lang_next().get$span(), $globals.world.void
Type); |
| 9485 | 9488 |
| 9486 case 113/*TokenKind.VAR*/: | 9489 case 113/*TokenKind.VAR*/: |
| 9487 | 9490 |
| 9488 return new TypeReference(this._next().get$span(), $globals.world.varType); | 9491 return new TypeReference(this._lang_next().get$span(), $globals.world.varT
ype); |
| 9489 | 9492 |
| 9490 case 98/*TokenKind.FINAL*/: | 9493 case 98/*TokenKind.FINAL*/: |
| 9491 | 9494 |
| 9492 this._eat(98/*TokenKind.FINAL*/); | 9495 this._eat(98/*TokenKind.FINAL*/); |
| 9493 isFinal = true; | 9496 isFinal = true; |
| 9494 name = this.identifier(); | 9497 name = this.identifier(); |
| 9495 break; | 9498 break; |
| 9496 | 9499 |
| 9497 default: | 9500 default: |
| 9498 | 9501 |
| (...skipping 22 matching lines...) Expand all Loading... |
| 9521 Parser.prototype.formalParameter = function(inOptionalBlock) { | 9524 Parser.prototype.formalParameter = function(inOptionalBlock) { |
| 9522 var start = this._peekToken.start; | 9525 var start = this._peekToken.start; |
| 9523 var isThis = false; | 9526 var isThis = false; |
| 9524 var isRest = false; | 9527 var isRest = false; |
| 9525 var di = this.declaredIdentifier(false); | 9528 var di = this.declaredIdentifier(false); |
| 9526 var type = di.get$type(); | 9529 var type = di.get$type(); |
| 9527 var name = di.get$name(); | 9530 var name = di.get$name(); |
| 9528 var value = null; | 9531 var value = null; |
| 9529 if (this._maybeEat(20/*TokenKind.ASSIGN*/)) { | 9532 if (this._maybeEat(20/*TokenKind.ASSIGN*/)) { |
| 9530 if (!inOptionalBlock) { | 9533 if (!inOptionalBlock) { |
| 9531 this._error('default values only allowed inside [optional] section'); | 9534 this._lang_error('default values only allowed inside [optional] section'); |
| 9532 } | 9535 } |
| 9533 value = this.expression(); | 9536 value = this.expression(); |
| 9534 } | 9537 } |
| 9535 else if (this._peekKind(2/*TokenKind.LPAREN*/)) { | 9538 else if (this._peekKind(2/*TokenKind.LPAREN*/)) { |
| 9536 var formals = this.formalParameterList(); | 9539 var formals = this.formalParameterList(); |
| 9537 var func = new FunctionDefinition(null, type, name, formals, null, null, nul
l, null, this._makeSpan(start)); | 9540 var func = new FunctionDefinition(null, type, name, formals, null, null, nul
l, null, this._makeSpan(start)); |
| 9538 type = new FunctionTypeReference(false, func, func.get$span()); | 9541 type = new FunctionTypeReference(false, func, func.get$span()); |
| 9539 } | 9542 } |
| 9540 if (inOptionalBlock && value == null) { | 9543 if (inOptionalBlock && value == null) { |
| 9541 value = new NullExpression(this._makeSpan(start)); | 9544 value = new NullExpression(this._makeSpan(start)); |
| 9542 } | 9545 } |
| 9543 return new FormalNode(isThis, isRest, type, name, value, this._makeSpan(start)
); | 9546 return new FormalNode(isThis, isRest, type, name, value, this._makeSpan(start)
); |
| 9544 } | 9547 } |
| 9545 Parser.prototype.formalParameterList = function() { | 9548 Parser.prototype.formalParameterList = function() { |
| 9546 this._eatLeftParen(); | 9549 this._eatLeftParen(); |
| 9547 var formals = []; | 9550 var formals = []; |
| 9548 var inOptionalBlock = false; | 9551 var inOptionalBlock = false; |
| 9549 if (!this._maybeEat(3/*TokenKind.RPAREN*/)) { | 9552 if (!this._maybeEat(3/*TokenKind.RPAREN*/)) { |
| 9550 if (this._maybeEat(4/*TokenKind.LBRACK*/)) { | 9553 if (this._maybeEat(4/*TokenKind.LBRACK*/)) { |
| 9551 inOptionalBlock = true; | 9554 inOptionalBlock = true; |
| 9552 } | 9555 } |
| 9553 formals.add$1(this.formalParameter(inOptionalBlock)); | 9556 formals.add$1(this.formalParameter(inOptionalBlock)); |
| 9554 while (this._maybeEat(11/*TokenKind.COMMA*/)) { | 9557 while (this._maybeEat(11/*TokenKind.COMMA*/)) { |
| 9555 if (this._maybeEat(4/*TokenKind.LBRACK*/)) { | 9558 if (this._maybeEat(4/*TokenKind.LBRACK*/)) { |
| 9556 if (inOptionalBlock) { | 9559 if (inOptionalBlock) { |
| 9557 this._error('already inside an optional block', this._previousToken.ge
t$span()); | 9560 this._lang_error('already inside an optional block', this._previousTok
en.get$span()); |
| 9558 } | 9561 } |
| 9559 inOptionalBlock = true; | 9562 inOptionalBlock = true; |
| 9560 } | 9563 } |
| 9561 formals.add$1(this.formalParameter(inOptionalBlock)); | 9564 formals.add$1(this.formalParameter(inOptionalBlock)); |
| 9562 } | 9565 } |
| 9563 if (inOptionalBlock) { | 9566 if (inOptionalBlock) { |
| 9564 this._eat(5/*TokenKind.RBRACK*/); | 9567 this._eat(5/*TokenKind.RBRACK*/); |
| 9565 } | 9568 } |
| 9566 this._eat(3/*TokenKind.RPAREN*/); | 9569 this._eat(3/*TokenKind.RPAREN*/); |
| 9567 } | 9570 } |
| 9568 return formals; | 9571 return formals; |
| 9569 } | 9572 } |
| 9570 Parser.prototype.identifier = function() { | 9573 Parser.prototype.identifier = function() { |
| 9571 var tok = this._next(); | 9574 var tok = this._lang_next(); |
| 9572 if (!this._isIdentifier(tok.get$kind())) { | 9575 if (!this._isIdentifier(tok.get$kind())) { |
| 9573 this._error(('expected identifier, but found ' + tok), tok.get$span()); | 9576 this._lang_error(('expected identifier, but found ' + tok), tok.get$span()); |
| 9574 } | 9577 } |
| 9575 return new Identifier(tok.get$text(), this._makeSpan(tok.get$start())); | 9578 return new Identifier(tok.get$text(), this._makeSpan(tok.get$start())); |
| 9576 } | 9579 } |
| 9577 Parser.prototype._makeFunction = function(expr, formals, body) { | 9580 Parser.prototype._makeFunction = function(expr, formals, body) { |
| 9578 var name, type; | 9581 var name, type; |
| 9579 if ((expr instanceof VarExpression)) { | 9582 if ((expr instanceof VarExpression)) { |
| 9580 name = expr.get$name(); | 9583 name = expr.get$name(); |
| 9581 type = null; | 9584 type = null; |
| 9582 } | 9585 } |
| 9583 else if ((expr instanceof DeclaredIdentifier)) { | 9586 else if ((expr instanceof DeclaredIdentifier)) { |
| 9584 name = expr.get$name(); | 9587 name = expr.get$name(); |
| 9585 type = expr.get$type(); | 9588 type = expr.get$type(); |
| 9586 } | 9589 } |
| 9587 else { | 9590 else { |
| 9588 this._error('bad function body', expr.get$span()); | 9591 this._lang_error('bad function body', expr.get$span()); |
| 9589 } | 9592 } |
| 9590 var span = new SourceSpan(expr.get$span().get$file(), expr.get$span().get$star
t(), body.get$span().get$end()); | 9593 var span = new SourceSpan(expr.get$span().get$file(), expr.get$span().get$star
t(), body.get$span().get$end()); |
| 9591 var func = new FunctionDefinition(null, type, name, formals, null, null, null,
body, span); | 9594 var func = new FunctionDefinition(null, type, name, formals, null, null, null,
body, span); |
| 9592 return new LambdaExpression(func, func.get$span()); | 9595 return new LambdaExpression(func, func.get$span()); |
| 9593 } | 9596 } |
| 9594 Parser.prototype._makeDeclaredIdentifier = function(e) { | 9597 Parser.prototype._makeDeclaredIdentifier = function(e) { |
| 9595 if ((e instanceof VarExpression)) { | 9598 if ((e instanceof VarExpression)) { |
| 9596 return new DeclaredIdentifier(null, e.get$name(), e.get$span()); | 9599 return new DeclaredIdentifier(null, e.get$name(), e.get$span()); |
| 9597 } | 9600 } |
| 9598 else if ((e instanceof DeclaredIdentifier)) { | 9601 else if ((e instanceof DeclaredIdentifier)) { |
| 9599 return e; | 9602 return e; |
| 9600 } | 9603 } |
| 9601 else { | 9604 else { |
| 9602 this._error('expected declared identifier'); | 9605 this._lang_error('expected declared identifier'); |
| 9603 return new DeclaredIdentifier(null, null, e.get$span()); | 9606 return new DeclaredIdentifier(null, null, e.get$span()); |
| 9604 } | 9607 } |
| 9605 } | 9608 } |
| 9606 Parser.prototype._makeLabel = function(expr) { | 9609 Parser.prototype._makeLabel = function(expr) { |
| 9607 if ((expr instanceof VarExpression)) { | 9610 if ((expr instanceof VarExpression)) { |
| 9608 return expr.get$name(); | 9611 return expr.get$name(); |
| 9609 } | 9612 } |
| 9610 else { | 9613 else { |
| 9611 this._errorExpected('label'); | 9614 this._errorExpected('label'); |
| 9612 return null; | 9615 return null; |
| 9613 } | 9616 } |
| 9614 } | 9617 } |
| 9615 Parser.prototype.block$0 = Parser.prototype.block; | 9618 Parser.prototype.block$0 = Parser.prototype.block; |
| 9616 // ********** Code for IncompleteSourceException ************** | 9619 // ********** Code for IncompleteSourceException ************** |
| 9617 function IncompleteSourceException(token) { | 9620 function IncompleteSourceException(token) { |
| 9618 this.token = token; | 9621 this.token = token; |
| 9619 // Initializers done | 9622 // Initializers done |
| 9620 } | 9623 } |
| 9621 IncompleteSourceException.prototype.toString = function() { | 9624 IncompleteSourceException.prototype.toString = function() { |
| 9622 if (this.token.get$span() == null) return ('Unexpected ' + this.token); | 9625 if (this.token.get$span() == null) return ('Unexpected ' + this.token); |
| 9623 return this.token.get$span().toMessageString(('Unexpected ' + this.token)); | 9626 return this.token.get$span().toMessageString(('Unexpected ' + this.token)); |
| 9624 } | 9627 } |
| 9625 IncompleteSourceException.prototype.toString$0 = IncompleteSourceException.proto
type.toString; | 9628 IncompleteSourceException.prototype.toString$0 = IncompleteSourceException.proto
type.toString; |
| 9626 // ********** Code for DivertedTokenSource ************** | 9629 // ********** Code for DivertedTokenSource ************** |
| 9627 function DivertedTokenSource(tokens, parser, previousTokenizer) { | 9630 function DivertedTokenSource(tokens, parser, previousTokenizer) { |
| 9628 this._pos = 0 | 9631 this._lang_pos = 0 |
| 9629 this.tokens = tokens; | 9632 this.tokens = tokens; |
| 9630 this.parser = parser; | 9633 this.parser = parser; |
| 9631 this.previousTokenizer = previousTokenizer; | 9634 this.previousTokenizer = previousTokenizer; |
| 9632 // Initializers done | 9635 // Initializers done |
| 9633 } | 9636 } |
| 9634 DivertedTokenSource.prototype.next = function() { | 9637 DivertedTokenSource.prototype.next = function() { |
| 9635 var token = this.tokens.$index(this._pos); | 9638 var token = this.tokens.$index(this._lang_pos); |
| 9636 ++this._pos; | 9639 ++this._lang_pos; |
| 9637 if (this._pos == this.tokens.length) { | 9640 if (this._lang_pos == this.tokens.length) { |
| 9638 this.parser.tokenizer = this.previousTokenizer; | 9641 this.parser.tokenizer = this.previousTokenizer; |
| 9639 } | 9642 } |
| 9640 return token; | 9643 return token; |
| 9641 } | 9644 } |
| 9642 DivertedTokenSource.prototype.next$0 = DivertedTokenSource.prototype.next; | 9645 DivertedTokenSource.prototype.next$0 = DivertedTokenSource.prototype.next; |
| 9643 // ********** Code for Node ************** | 9646 // ********** Code for Node ************** |
| 9644 function Node(span) { | 9647 function Node(span) { |
| 9645 this.span = span; | 9648 this.span = span; |
| 9646 // Initializers done | 9649 // Initializers done |
| 9647 } | 9650 } |
| 9648 Node.prototype.get$span = function() { return this.span; }; | 9651 Node.prototype.get$span = function() { return this.span; }; |
| 9649 Node.prototype.set$span = function(value) { return this.span = value; }; | 9652 Node.prototype.set$span = function(value) { return this.span = value; }; |
| 9650 Node.prototype.visit$1 = Node.prototype.visit; | 9653 Node.prototype.visit$1 = Node.prototype.visit; |
| 9654 // ********** Code for Statement ************** |
| 9655 $inherits(Statement, Node); |
| 9656 function Statement(span) { |
| 9657 // Initializers done |
| 9658 Node.call(this, span); |
| 9659 } |
| 9651 // ********** Code for Definition ************** | 9660 // ********** Code for Definition ************** |
| 9661 $inherits(Definition, Statement); |
| 9652 function Definition(span) { | 9662 function Definition(span) { |
| 9653 // Initializers done | 9663 // Initializers done |
| 9654 Statement.call(this, span); | 9664 Statement.call(this, span); |
| 9655 } | 9665 } |
| 9656 $inherits(Definition, Statement); | |
| 9657 Definition.prototype.get$typeParameters = function() { | 9666 Definition.prototype.get$typeParameters = function() { |
| 9658 return null; | 9667 return null; |
| 9659 } | 9668 } |
| 9660 Definition.prototype.get$nativeType = function() { | 9669 Definition.prototype.get$nativeType = function() { |
| 9661 return null; | 9670 return null; |
| 9662 } | 9671 } |
| 9663 // ********** Code for Statement ************** | |
| 9664 function Statement(span) { | |
| 9665 // Initializers done | |
| 9666 Node.call(this, span); | |
| 9667 } | |
| 9668 $inherits(Statement, Node); | |
| 9669 // ********** Code for Expression ************** | 9672 // ********** Code for Expression ************** |
| 9673 $inherits(Expression, Node); |
| 9670 function Expression(span) { | 9674 function Expression(span) { |
| 9671 // Initializers done | 9675 // Initializers done |
| 9672 Node.call(this, span); | 9676 Node.call(this, span); |
| 9673 } | 9677 } |
| 9674 $inherits(Expression, Node); | |
| 9675 // ********** Code for TypeReference ************** | 9678 // ********** Code for TypeReference ************** |
| 9679 $inherits(TypeReference, Node); |
| 9676 function TypeReference(span, type) { | 9680 function TypeReference(span, type) { |
| 9677 this.type = type; | 9681 this.type = type; |
| 9678 // Initializers done | 9682 // Initializers done |
| 9679 Node.call(this, span); | 9683 Node.call(this, span); |
| 9680 } | 9684 } |
| 9681 $inherits(TypeReference, Node); | |
| 9682 TypeReference.prototype.get$type = function() { return this.type; }; | 9685 TypeReference.prototype.get$type = function() { return this.type; }; |
| 9683 TypeReference.prototype.set$type = function(value) { return this.type = value; }
; | 9686 TypeReference.prototype.set$type = function(value) { return this.type = value; }
; |
| 9684 TypeReference.prototype.visit = function(visitor) { | 9687 TypeReference.prototype.visit = function(visitor) { |
| 9685 return visitor.visitTypeReference(this); | 9688 return visitor.visitTypeReference(this); |
| 9686 } | 9689 } |
| 9687 TypeReference.prototype.get$isFinal = function() { | 9690 TypeReference.prototype.get$isFinal = function() { |
| 9688 return false; | 9691 return false; |
| 9689 } | 9692 } |
| 9690 TypeReference.prototype.visit$1 = TypeReference.prototype.visit; | 9693 TypeReference.prototype.visit$1 = TypeReference.prototype.visit; |
| 9691 // ********** Code for DirectiveDefinition ************** | 9694 // ********** Code for DirectiveDefinition ************** |
| 9695 $inherits(DirectiveDefinition, Definition); |
| 9692 function DirectiveDefinition(name, arguments, span) { | 9696 function DirectiveDefinition(name, arguments, span) { |
| 9693 this.name = name; | 9697 this.name = name; |
| 9694 this.arguments = arguments; | 9698 this.arguments = arguments; |
| 9695 // Initializers done | 9699 // Initializers done |
| 9696 Definition.call(this, span); | 9700 Definition.call(this, span); |
| 9697 } | 9701 } |
| 9698 $inherits(DirectiveDefinition, Definition); | |
| 9699 DirectiveDefinition.prototype.get$name = function() { return this.name; }; | 9702 DirectiveDefinition.prototype.get$name = function() { return this.name; }; |
| 9700 DirectiveDefinition.prototype.set$name = function(value) { return this.name = va
lue; }; | 9703 DirectiveDefinition.prototype.set$name = function(value) { return this.name = va
lue; }; |
| 9701 DirectiveDefinition.prototype.get$arguments = function() { return this.arguments
; }; | 9704 DirectiveDefinition.prototype.get$arguments = function() { return this.arguments
; }; |
| 9702 DirectiveDefinition.prototype.set$arguments = function(value) { return this.argu
ments = value; }; | 9705 DirectiveDefinition.prototype.set$arguments = function(value) { return this.argu
ments = value; }; |
| 9703 DirectiveDefinition.prototype.visit = function(visitor) { | 9706 DirectiveDefinition.prototype.visit = function(visitor) { |
| 9704 return visitor.visitDirectiveDefinition(this); | 9707 return visitor.visitDirectiveDefinition(this); |
| 9705 } | 9708 } |
| 9706 DirectiveDefinition.prototype.visit$1 = DirectiveDefinition.prototype.visit; | 9709 DirectiveDefinition.prototype.visit$1 = DirectiveDefinition.prototype.visit; |
| 9707 // ********** Code for TypeDefinition ************** | 9710 // ********** Code for TypeDefinition ************** |
| 9711 $inherits(TypeDefinition, Definition); |
| 9708 function TypeDefinition(isClass, name, typeParameters, extendsTypes, implementsT
ypes, nativeType, factoryType, body, span) { | 9712 function TypeDefinition(isClass, name, typeParameters, extendsTypes, implementsT
ypes, nativeType, factoryType, body, span) { |
| 9709 this.isClass = isClass; | 9713 this.isClass = isClass; |
| 9710 this.name = name; | 9714 this.name = name; |
| 9711 this.typeParameters = typeParameters; | 9715 this.typeParameters = typeParameters; |
| 9712 this.extendsTypes = extendsTypes; | 9716 this.extendsTypes = extendsTypes; |
| 9713 this.implementsTypes = implementsTypes; | 9717 this.implementsTypes = implementsTypes; |
| 9714 this.nativeType = nativeType; | 9718 this.nativeType = nativeType; |
| 9715 this.factoryType = factoryType; | 9719 this.factoryType = factoryType; |
| 9716 this.body = body; | 9720 this.body = body; |
| 9717 // Initializers done | 9721 // Initializers done |
| 9718 Definition.call(this, span); | 9722 Definition.call(this, span); |
| 9719 } | 9723 } |
| 9720 $inherits(TypeDefinition, Definition); | |
| 9721 TypeDefinition.prototype.get$isClass = function() { return this.isClass; }; | 9724 TypeDefinition.prototype.get$isClass = function() { return this.isClass; }; |
| 9722 TypeDefinition.prototype.set$isClass = function(value) { return this.isClass = v
alue; }; | 9725 TypeDefinition.prototype.set$isClass = function(value) { return this.isClass = v
alue; }; |
| 9723 TypeDefinition.prototype.get$name = function() { return this.name; }; | 9726 TypeDefinition.prototype.get$name = function() { return this.name; }; |
| 9724 TypeDefinition.prototype.set$name = function(value) { return this.name = value;
}; | 9727 TypeDefinition.prototype.set$name = function(value) { return this.name = value;
}; |
| 9725 TypeDefinition.prototype.get$typeParameters = function() { return this.typeParam
eters; }; | 9728 TypeDefinition.prototype.get$typeParameters = function() { return this.typeParam
eters; }; |
| 9726 TypeDefinition.prototype.set$typeParameters = function(value) { return this.type
Parameters = value; }; | 9729 TypeDefinition.prototype.set$typeParameters = function(value) { return this.type
Parameters = value; }; |
| 9727 TypeDefinition.prototype.get$nativeType = function() { return this.nativeType; }
; | 9730 TypeDefinition.prototype.get$nativeType = function() { return this.nativeType; }
; |
| 9728 TypeDefinition.prototype.set$nativeType = function(value) { return this.nativeTy
pe = value; }; | 9731 TypeDefinition.prototype.set$nativeType = function(value) { return this.nativeTy
pe = value; }; |
| 9729 TypeDefinition.prototype.get$body = function() { return this.body; }; | 9732 TypeDefinition.prototype.get$body = function() { return this.body; }; |
| 9730 TypeDefinition.prototype.set$body = function(value) { return this.body = value;
}; | 9733 TypeDefinition.prototype.set$body = function(value) { return this.body = value;
}; |
| 9731 TypeDefinition.prototype.visit = function(visitor) { | 9734 TypeDefinition.prototype.visit = function(visitor) { |
| 9732 return visitor.visitTypeDefinition(this); | 9735 return visitor.visitTypeDefinition(this); |
| 9733 } | 9736 } |
| 9734 TypeDefinition.prototype.visit$1 = TypeDefinition.prototype.visit; | 9737 TypeDefinition.prototype.visit$1 = TypeDefinition.prototype.visit; |
| 9735 // ********** Code for FunctionTypeDefinition ************** | 9738 // ********** Code for FunctionTypeDefinition ************** |
| 9739 $inherits(FunctionTypeDefinition, Definition); |
| 9736 function FunctionTypeDefinition(func, typeParameters, span) { | 9740 function FunctionTypeDefinition(func, typeParameters, span) { |
| 9737 this.func = func; | 9741 this.func = func; |
| 9738 this.typeParameters = typeParameters; | 9742 this.typeParameters = typeParameters; |
| 9739 // Initializers done | 9743 // Initializers done |
| 9740 Definition.call(this, span); | 9744 Definition.call(this, span); |
| 9741 } | 9745 } |
| 9742 $inherits(FunctionTypeDefinition, Definition); | |
| 9743 FunctionTypeDefinition.prototype.get$func = function() { return this.func; }; | 9746 FunctionTypeDefinition.prototype.get$func = function() { return this.func; }; |
| 9744 FunctionTypeDefinition.prototype.set$func = function(value) { return this.func =
value; }; | 9747 FunctionTypeDefinition.prototype.set$func = function(value) { return this.func =
value; }; |
| 9745 FunctionTypeDefinition.prototype.get$typeParameters = function() { return this.t
ypeParameters; }; | 9748 FunctionTypeDefinition.prototype.get$typeParameters = function() { return this.t
ypeParameters; }; |
| 9746 FunctionTypeDefinition.prototype.set$typeParameters = function(value) { return t
his.typeParameters = value; }; | 9749 FunctionTypeDefinition.prototype.set$typeParameters = function(value) { return t
his.typeParameters = value; }; |
| 9747 FunctionTypeDefinition.prototype.visit = function(visitor) { | 9750 FunctionTypeDefinition.prototype.visit = function(visitor) { |
| 9748 return visitor.visitFunctionTypeDefinition(this); | 9751 return visitor.visitFunctionTypeDefinition(this); |
| 9749 } | 9752 } |
| 9750 FunctionTypeDefinition.prototype.visit$1 = FunctionTypeDefinition.prototype.visi
t; | 9753 FunctionTypeDefinition.prototype.visit$1 = FunctionTypeDefinition.prototype.visi
t; |
| 9751 // ********** Code for VariableDefinition ************** | 9754 // ********** Code for VariableDefinition ************** |
| 9755 $inherits(VariableDefinition, Definition); |
| 9752 function VariableDefinition(modifiers, type, names, values, span) { | 9756 function VariableDefinition(modifiers, type, names, values, span) { |
| 9753 this.modifiers = modifiers; | 9757 this.modifiers = modifiers; |
| 9754 this.type = type; | 9758 this.type = type; |
| 9755 this.names = names; | 9759 this.names = names; |
| 9756 this.values = values; | 9760 this.values = values; |
| 9757 // Initializers done | 9761 // Initializers done |
| 9758 Definition.call(this, span); | 9762 Definition.call(this, span); |
| 9759 } | 9763 } |
| 9760 $inherits(VariableDefinition, Definition); | |
| 9761 VariableDefinition.prototype.get$type = function() { return this.type; }; | 9764 VariableDefinition.prototype.get$type = function() { return this.type; }; |
| 9762 VariableDefinition.prototype.set$type = function(value) { return this.type = val
ue; }; | 9765 VariableDefinition.prototype.set$type = function(value) { return this.type = val
ue; }; |
| 9763 VariableDefinition.prototype.get$names = function() { return this.names; }; | 9766 VariableDefinition.prototype.get$names = function() { return this.names; }; |
| 9764 VariableDefinition.prototype.set$names = function(value) { return this.names = v
alue; }; | 9767 VariableDefinition.prototype.set$names = function(value) { return this.names = v
alue; }; |
| 9765 VariableDefinition.prototype.get$values = function() { return this.values; }; | 9768 VariableDefinition.prototype.get$values = function() { return this.values; }; |
| 9766 VariableDefinition.prototype.set$values = function(value) { return this.values =
value; }; | 9769 VariableDefinition.prototype.set$values = function(value) { return this.values =
value; }; |
| 9767 VariableDefinition.prototype.visit = function(visitor) { | 9770 VariableDefinition.prototype.visit = function(visitor) { |
| 9768 return visitor.visitVariableDefinition(this); | 9771 return visitor.visitVariableDefinition(this); |
| 9769 } | 9772 } |
| 9770 VariableDefinition.prototype.visit$1 = VariableDefinition.prototype.visit; | 9773 VariableDefinition.prototype.visit$1 = VariableDefinition.prototype.visit; |
| 9771 // ********** Code for FunctionDefinition ************** | 9774 // ********** Code for FunctionDefinition ************** |
| 9775 $inherits(FunctionDefinition, Definition); |
| 9772 function FunctionDefinition(modifiers, returnType, name, formals, typeParameters
, initializers, nativeBody, body, span) { | 9776 function FunctionDefinition(modifiers, returnType, name, formals, typeParameters
, initializers, nativeBody, body, span) { |
| 9773 this.modifiers = modifiers; | 9777 this.modifiers = modifiers; |
| 9774 this.returnType = returnType; | 9778 this.returnType = returnType; |
| 9775 this.name = name; | 9779 this.name = name; |
| 9776 this.formals = formals; | 9780 this.formals = formals; |
| 9777 this.typeParameters = typeParameters; | 9781 this.typeParameters = typeParameters; |
| 9778 this.initializers = initializers; | 9782 this.initializers = initializers; |
| 9779 this.nativeBody = nativeBody; | 9783 this.nativeBody = nativeBody; |
| 9780 this.body = body; | 9784 this.body = body; |
| 9781 // Initializers done | 9785 // Initializers done |
| 9782 Definition.call(this, span); | 9786 Definition.call(this, span); |
| 9783 } | 9787 } |
| 9784 $inherits(FunctionDefinition, Definition); | |
| 9785 FunctionDefinition.prototype.get$returnType = function() { return this.returnTyp
e; }; | 9788 FunctionDefinition.prototype.get$returnType = function() { return this.returnTyp
e; }; |
| 9786 FunctionDefinition.prototype.set$returnType = function(value) { return this.retu
rnType = value; }; | 9789 FunctionDefinition.prototype.set$returnType = function(value) { return this.retu
rnType = value; }; |
| 9787 FunctionDefinition.prototype.get$name = function() { return this.name; }; | 9790 FunctionDefinition.prototype.get$name = function() { return this.name; }; |
| 9788 FunctionDefinition.prototype.set$name = function(value) { return this.name = val
ue; }; | 9791 FunctionDefinition.prototype.set$name = function(value) { return this.name = val
ue; }; |
| 9789 FunctionDefinition.prototype.get$typeParameters = function() { return this.typeP
arameters; }; | 9792 FunctionDefinition.prototype.get$typeParameters = function() { return this.typeP
arameters; }; |
| 9790 FunctionDefinition.prototype.set$typeParameters = function(value) { return this.
typeParameters = value; }; | 9793 FunctionDefinition.prototype.set$typeParameters = function(value) { return this.
typeParameters = value; }; |
| 9791 FunctionDefinition.prototype.get$initializers = function() { return this.initial
izers; }; | 9794 FunctionDefinition.prototype.get$initializers = function() { return this.initial
izers; }; |
| 9792 FunctionDefinition.prototype.set$initializers = function(value) { return this.in
itializers = value; }; | 9795 FunctionDefinition.prototype.set$initializers = function(value) { return this.in
itializers = value; }; |
| 9793 FunctionDefinition.prototype.get$nativeBody = function() { return this.nativeBod
y; }; | 9796 FunctionDefinition.prototype.get$nativeBody = function() { return this.nativeBod
y; }; |
| 9794 FunctionDefinition.prototype.set$nativeBody = function(value) { return this.nati
veBody = value; }; | 9797 FunctionDefinition.prototype.set$nativeBody = function(value) { return this.nati
veBody = value; }; |
| 9795 FunctionDefinition.prototype.get$body = function() { return this.body; }; | 9798 FunctionDefinition.prototype.get$body = function() { return this.body; }; |
| 9796 FunctionDefinition.prototype.set$body = function(value) { return this.body = val
ue; }; | 9799 FunctionDefinition.prototype.set$body = function(value) { return this.body = val
ue; }; |
| 9797 FunctionDefinition.prototype.visit = function(visitor) { | 9800 FunctionDefinition.prototype.visit = function(visitor) { |
| 9798 return visitor.visitFunctionDefinition(this); | 9801 return visitor.visitFunctionDefinition(this); |
| 9799 } | 9802 } |
| 9800 FunctionDefinition.prototype.visit$1 = FunctionDefinition.prototype.visit; | 9803 FunctionDefinition.prototype.visit$1 = FunctionDefinition.prototype.visit; |
| 9801 // ********** Code for ReturnStatement ************** | 9804 // ********** Code for ReturnStatement ************** |
| 9805 $inherits(ReturnStatement, Statement); |
| 9802 function ReturnStatement(value, span) { | 9806 function ReturnStatement(value, span) { |
| 9803 this.value = value; | 9807 this.value = value; |
| 9804 // Initializers done | 9808 // Initializers done |
| 9805 Statement.call(this, span); | 9809 Statement.call(this, span); |
| 9806 } | 9810 } |
| 9807 $inherits(ReturnStatement, Statement); | |
| 9808 ReturnStatement.prototype.get$value = function() { return this.value; }; | 9811 ReturnStatement.prototype.get$value = function() { return this.value; }; |
| 9809 ReturnStatement.prototype.set$value = function(value) { return this.value = valu
e; }; | 9812 ReturnStatement.prototype.set$value = function(value) { return this.value = valu
e; }; |
| 9810 ReturnStatement.prototype.visit = function(visitor) { | 9813 ReturnStatement.prototype.visit = function(visitor) { |
| 9811 return visitor.visitReturnStatement(this); | 9814 return visitor.visitReturnStatement(this); |
| 9812 } | 9815 } |
| 9813 ReturnStatement.prototype.visit$1 = ReturnStatement.prototype.visit; | 9816 ReturnStatement.prototype.visit$1 = ReturnStatement.prototype.visit; |
| 9814 // ********** Code for ThrowStatement ************** | 9817 // ********** Code for ThrowStatement ************** |
| 9818 $inherits(ThrowStatement, Statement); |
| 9815 function ThrowStatement(value, span) { | 9819 function ThrowStatement(value, span) { |
| 9816 this.value = value; | 9820 this.value = value; |
| 9817 // Initializers done | 9821 // Initializers done |
| 9818 Statement.call(this, span); | 9822 Statement.call(this, span); |
| 9819 } | 9823 } |
| 9820 $inherits(ThrowStatement, Statement); | |
| 9821 ThrowStatement.prototype.get$value = function() { return this.value; }; | 9824 ThrowStatement.prototype.get$value = function() { return this.value; }; |
| 9822 ThrowStatement.prototype.set$value = function(value) { return this.value = value
; }; | 9825 ThrowStatement.prototype.set$value = function(value) { return this.value = value
; }; |
| 9823 ThrowStatement.prototype.visit = function(visitor) { | 9826 ThrowStatement.prototype.visit = function(visitor) { |
| 9824 return visitor.visitThrowStatement(this); | 9827 return visitor.visitThrowStatement(this); |
| 9825 } | 9828 } |
| 9826 ThrowStatement.prototype.visit$1 = ThrowStatement.prototype.visit; | 9829 ThrowStatement.prototype.visit$1 = ThrowStatement.prototype.visit; |
| 9827 // ********** Code for AssertStatement ************** | 9830 // ********** Code for AssertStatement ************** |
| 9831 $inherits(AssertStatement, Statement); |
| 9828 function AssertStatement(test, span) { | 9832 function AssertStatement(test, span) { |
| 9829 this.test = test; | 9833 this.test = test; |
| 9830 // Initializers done | 9834 // Initializers done |
| 9831 Statement.call(this, span); | 9835 Statement.call(this, span); |
| 9832 } | 9836 } |
| 9833 $inherits(AssertStatement, Statement); | |
| 9834 AssertStatement.prototype.visit = function(visitor) { | 9837 AssertStatement.prototype.visit = function(visitor) { |
| 9835 return visitor.visitAssertStatement(this); | 9838 return visitor.visitAssertStatement(this); |
| 9836 } | 9839 } |
| 9837 AssertStatement.prototype.visit$1 = AssertStatement.prototype.visit; | 9840 AssertStatement.prototype.visit$1 = AssertStatement.prototype.visit; |
| 9838 // ********** Code for BreakStatement ************** | 9841 // ********** Code for BreakStatement ************** |
| 9842 $inherits(BreakStatement, Statement); |
| 9839 function BreakStatement(label, span) { | 9843 function BreakStatement(label, span) { |
| 9840 this.label = label; | 9844 this.label = label; |
| 9841 // Initializers done | 9845 // Initializers done |
| 9842 Statement.call(this, span); | 9846 Statement.call(this, span); |
| 9843 } | 9847 } |
| 9844 $inherits(BreakStatement, Statement); | |
| 9845 BreakStatement.prototype.get$label = function() { return this.label; }; | 9848 BreakStatement.prototype.get$label = function() { return this.label; }; |
| 9846 BreakStatement.prototype.set$label = function(value) { return this.label = value
; }; | 9849 BreakStatement.prototype.set$label = function(value) { return this.label = value
; }; |
| 9847 BreakStatement.prototype.visit = function(visitor) { | 9850 BreakStatement.prototype.visit = function(visitor) { |
| 9848 return visitor.visitBreakStatement(this); | 9851 return visitor.visitBreakStatement(this); |
| 9849 } | 9852 } |
| 9850 BreakStatement.prototype.visit$1 = BreakStatement.prototype.visit; | 9853 BreakStatement.prototype.visit$1 = BreakStatement.prototype.visit; |
| 9851 // ********** Code for ContinueStatement ************** | 9854 // ********** Code for ContinueStatement ************** |
| 9855 $inherits(ContinueStatement, Statement); |
| 9852 function ContinueStatement(label, span) { | 9856 function ContinueStatement(label, span) { |
| 9853 this.label = label; | 9857 this.label = label; |
| 9854 // Initializers done | 9858 // Initializers done |
| 9855 Statement.call(this, span); | 9859 Statement.call(this, span); |
| 9856 } | 9860 } |
| 9857 $inherits(ContinueStatement, Statement); | |
| 9858 ContinueStatement.prototype.get$label = function() { return this.label; }; | 9861 ContinueStatement.prototype.get$label = function() { return this.label; }; |
| 9859 ContinueStatement.prototype.set$label = function(value) { return this.label = va
lue; }; | 9862 ContinueStatement.prototype.set$label = function(value) { return this.label = va
lue; }; |
| 9860 ContinueStatement.prototype.visit = function(visitor) { | 9863 ContinueStatement.prototype.visit = function(visitor) { |
| 9861 return visitor.visitContinueStatement(this); | 9864 return visitor.visitContinueStatement(this); |
| 9862 } | 9865 } |
| 9863 ContinueStatement.prototype.visit$1 = ContinueStatement.prototype.visit; | 9866 ContinueStatement.prototype.visit$1 = ContinueStatement.prototype.visit; |
| 9864 // ********** Code for IfStatement ************** | 9867 // ********** Code for IfStatement ************** |
| 9868 $inherits(IfStatement, Statement); |
| 9865 function IfStatement(test, trueBranch, falseBranch, span) { | 9869 function IfStatement(test, trueBranch, falseBranch, span) { |
| 9866 this.test = test; | 9870 this.test = test; |
| 9867 this.trueBranch = trueBranch; | 9871 this.trueBranch = trueBranch; |
| 9868 this.falseBranch = falseBranch; | 9872 this.falseBranch = falseBranch; |
| 9869 // Initializers done | 9873 // Initializers done |
| 9870 Statement.call(this, span); | 9874 Statement.call(this, span); |
| 9871 } | 9875 } |
| 9872 $inherits(IfStatement, Statement); | |
| 9873 IfStatement.prototype.visit = function(visitor) { | 9876 IfStatement.prototype.visit = function(visitor) { |
| 9874 return visitor.visitIfStatement(this); | 9877 return visitor.visitIfStatement(this); |
| 9875 } | 9878 } |
| 9876 IfStatement.prototype.visit$1 = IfStatement.prototype.visit; | 9879 IfStatement.prototype.visit$1 = IfStatement.prototype.visit; |
| 9877 // ********** Code for WhileStatement ************** | 9880 // ********** Code for WhileStatement ************** |
| 9881 $inherits(WhileStatement, Statement); |
| 9878 function WhileStatement(test, body, span) { | 9882 function WhileStatement(test, body, span) { |
| 9879 this.test = test; | 9883 this.test = test; |
| 9880 this.body = body; | 9884 this.body = body; |
| 9881 // Initializers done | 9885 // Initializers done |
| 9882 Statement.call(this, span); | 9886 Statement.call(this, span); |
| 9883 } | 9887 } |
| 9884 $inherits(WhileStatement, Statement); | |
| 9885 WhileStatement.prototype.get$body = function() { return this.body; }; | 9888 WhileStatement.prototype.get$body = function() { return this.body; }; |
| 9886 WhileStatement.prototype.set$body = function(value) { return this.body = value;
}; | 9889 WhileStatement.prototype.set$body = function(value) { return this.body = value;
}; |
| 9887 WhileStatement.prototype.visit = function(visitor) { | 9890 WhileStatement.prototype.visit = function(visitor) { |
| 9888 return visitor.visitWhileStatement(this); | 9891 return visitor.visitWhileStatement(this); |
| 9889 } | 9892 } |
| 9890 WhileStatement.prototype.visit$1 = WhileStatement.prototype.visit; | 9893 WhileStatement.prototype.visit$1 = WhileStatement.prototype.visit; |
| 9891 // ********** Code for DoStatement ************** | 9894 // ********** Code for DoStatement ************** |
| 9895 $inherits(DoStatement, Statement); |
| 9892 function DoStatement(body, test, span) { | 9896 function DoStatement(body, test, span) { |
| 9893 this.body = body; | 9897 this.body = body; |
| 9894 this.test = test; | 9898 this.test = test; |
| 9895 // Initializers done | 9899 // Initializers done |
| 9896 Statement.call(this, span); | 9900 Statement.call(this, span); |
| 9897 } | 9901 } |
| 9898 $inherits(DoStatement, Statement); | |
| 9899 DoStatement.prototype.get$body = function() { return this.body; }; | 9902 DoStatement.prototype.get$body = function() { return this.body; }; |
| 9900 DoStatement.prototype.set$body = function(value) { return this.body = value; }; | 9903 DoStatement.prototype.set$body = function(value) { return this.body = value; }; |
| 9901 DoStatement.prototype.visit = function(visitor) { | 9904 DoStatement.prototype.visit = function(visitor) { |
| 9902 return visitor.visitDoStatement(this); | 9905 return visitor.visitDoStatement(this); |
| 9903 } | 9906 } |
| 9904 DoStatement.prototype.visit$1 = DoStatement.prototype.visit; | 9907 DoStatement.prototype.visit$1 = DoStatement.prototype.visit; |
| 9905 // ********** Code for ForStatement ************** | 9908 // ********** Code for ForStatement ************** |
| 9909 $inherits(ForStatement, Statement); |
| 9906 function ForStatement(init, test, step, body, span) { | 9910 function ForStatement(init, test, step, body, span) { |
| 9907 this.init = init; | 9911 this.init = init; |
| 9908 this.test = test; | 9912 this.test = test; |
| 9909 this.step = step; | 9913 this.step = step; |
| 9910 this.body = body; | 9914 this.body = body; |
| 9911 // Initializers done | 9915 // Initializers done |
| 9912 Statement.call(this, span); | 9916 Statement.call(this, span); |
| 9913 } | 9917 } |
| 9914 $inherits(ForStatement, Statement); | |
| 9915 ForStatement.prototype.get$body = function() { return this.body; }; | 9918 ForStatement.prototype.get$body = function() { return this.body; }; |
| 9916 ForStatement.prototype.set$body = function(value) { return this.body = value; }; | 9919 ForStatement.prototype.set$body = function(value) { return this.body = value; }; |
| 9917 ForStatement.prototype.visit = function(visitor) { | 9920 ForStatement.prototype.visit = function(visitor) { |
| 9918 return visitor.visitForStatement(this); | 9921 return visitor.visitForStatement(this); |
| 9919 } | 9922 } |
| 9920 ForStatement.prototype.visit$1 = ForStatement.prototype.visit; | 9923 ForStatement.prototype.visit$1 = ForStatement.prototype.visit; |
| 9921 // ********** Code for ForInStatement ************** | 9924 // ********** Code for ForInStatement ************** |
| 9925 $inherits(ForInStatement, Statement); |
| 9922 function ForInStatement(item, list, body, span) { | 9926 function ForInStatement(item, list, body, span) { |
| 9923 this.item = item; | 9927 this.item = item; |
| 9924 this.list = list; | 9928 this.list = list; |
| 9925 this.body = body; | 9929 this.body = body; |
| 9926 // Initializers done | 9930 // Initializers done |
| 9927 Statement.call(this, span); | 9931 Statement.call(this, span); |
| 9928 } | 9932 } |
| 9929 $inherits(ForInStatement, Statement); | |
| 9930 ForInStatement.prototype.get$body = function() { return this.body; }; | 9933 ForInStatement.prototype.get$body = function() { return this.body; }; |
| 9931 ForInStatement.prototype.set$body = function(value) { return this.body = value;
}; | 9934 ForInStatement.prototype.set$body = function(value) { return this.body = value;
}; |
| 9932 ForInStatement.prototype.visit = function(visitor) { | 9935 ForInStatement.prototype.visit = function(visitor) { |
| 9933 return visitor.visitForInStatement(this); | 9936 return visitor.visitForInStatement(this); |
| 9934 } | 9937 } |
| 9935 ForInStatement.prototype.visit$1 = ForInStatement.prototype.visit; | 9938 ForInStatement.prototype.visit$1 = ForInStatement.prototype.visit; |
| 9936 // ********** Code for TryStatement ************** | 9939 // ********** Code for TryStatement ************** |
| 9940 $inherits(TryStatement, Statement); |
| 9937 function TryStatement(body, catches, finallyBlock, span) { | 9941 function TryStatement(body, catches, finallyBlock, span) { |
| 9938 this.body = body; | 9942 this.body = body; |
| 9939 this.catches = catches; | 9943 this.catches = catches; |
| 9940 this.finallyBlock = finallyBlock; | 9944 this.finallyBlock = finallyBlock; |
| 9941 // Initializers done | 9945 // Initializers done |
| 9942 Statement.call(this, span); | 9946 Statement.call(this, span); |
| 9943 } | 9947 } |
| 9944 $inherits(TryStatement, Statement); | |
| 9945 TryStatement.prototype.get$body = function() { return this.body; }; | 9948 TryStatement.prototype.get$body = function() { return this.body; }; |
| 9946 TryStatement.prototype.set$body = function(value) { return this.body = value; }; | 9949 TryStatement.prototype.set$body = function(value) { return this.body = value; }; |
| 9947 TryStatement.prototype.visit = function(visitor) { | 9950 TryStatement.prototype.visit = function(visitor) { |
| 9948 return visitor.visitTryStatement(this); | 9951 return visitor.visitTryStatement(this); |
| 9949 } | 9952 } |
| 9950 TryStatement.prototype.visit$1 = TryStatement.prototype.visit; | 9953 TryStatement.prototype.visit$1 = TryStatement.prototype.visit; |
| 9951 // ********** Code for SwitchStatement ************** | 9954 // ********** Code for SwitchStatement ************** |
| 9955 $inherits(SwitchStatement, Statement); |
| 9952 function SwitchStatement(test, cases, span) { | 9956 function SwitchStatement(test, cases, span) { |
| 9953 this.test = test; | 9957 this.test = test; |
| 9954 this.cases = cases; | 9958 this.cases = cases; |
| 9955 // Initializers done | 9959 // Initializers done |
| 9956 Statement.call(this, span); | 9960 Statement.call(this, span); |
| 9957 } | 9961 } |
| 9958 $inherits(SwitchStatement, Statement); | |
| 9959 SwitchStatement.prototype.get$cases = function() { return this.cases; }; | 9962 SwitchStatement.prototype.get$cases = function() { return this.cases; }; |
| 9960 SwitchStatement.prototype.set$cases = function(value) { return this.cases = valu
e; }; | 9963 SwitchStatement.prototype.set$cases = function(value) { return this.cases = valu
e; }; |
| 9961 SwitchStatement.prototype.visit = function(visitor) { | 9964 SwitchStatement.prototype.visit = function(visitor) { |
| 9962 return visitor.visitSwitchStatement(this); | 9965 return visitor.visitSwitchStatement(this); |
| 9963 } | 9966 } |
| 9964 SwitchStatement.prototype.visit$1 = SwitchStatement.prototype.visit; | 9967 SwitchStatement.prototype.visit$1 = SwitchStatement.prototype.visit; |
| 9965 // ********** Code for BlockStatement ************** | 9968 // ********** Code for BlockStatement ************** |
| 9969 $inherits(BlockStatement, Statement); |
| 9966 function BlockStatement(body, span) { | 9970 function BlockStatement(body, span) { |
| 9967 this.body = body; | 9971 this.body = body; |
| 9968 // Initializers done | 9972 // Initializers done |
| 9969 Statement.call(this, span); | 9973 Statement.call(this, span); |
| 9970 } | 9974 } |
| 9971 $inherits(BlockStatement, Statement); | |
| 9972 BlockStatement.prototype.get$body = function() { return this.body; }; | 9975 BlockStatement.prototype.get$body = function() { return this.body; }; |
| 9973 BlockStatement.prototype.set$body = function(value) { return this.body = value;
}; | 9976 BlockStatement.prototype.set$body = function(value) { return this.body = value;
}; |
| 9974 BlockStatement.prototype.visit = function(visitor) { | 9977 BlockStatement.prototype.visit = function(visitor) { |
| 9975 return visitor.visitBlockStatement(this); | 9978 return visitor.visitBlockStatement(this); |
| 9976 } | 9979 } |
| 9977 BlockStatement.prototype.visit$1 = BlockStatement.prototype.visit; | 9980 BlockStatement.prototype.visit$1 = BlockStatement.prototype.visit; |
| 9978 // ********** Code for LabeledStatement ************** | 9981 // ********** Code for LabeledStatement ************** |
| 9982 $inherits(LabeledStatement, Statement); |
| 9979 function LabeledStatement(name, body, span) { | 9983 function LabeledStatement(name, body, span) { |
| 9980 this.name = name; | 9984 this.name = name; |
| 9981 this.body = body; | 9985 this.body = body; |
| 9982 // Initializers done | 9986 // Initializers done |
| 9983 Statement.call(this, span); | 9987 Statement.call(this, span); |
| 9984 } | 9988 } |
| 9985 $inherits(LabeledStatement, Statement); | |
| 9986 LabeledStatement.prototype.get$name = function() { return this.name; }; | 9989 LabeledStatement.prototype.get$name = function() { return this.name; }; |
| 9987 LabeledStatement.prototype.set$name = function(value) { return this.name = value
; }; | 9990 LabeledStatement.prototype.set$name = function(value) { return this.name = value
; }; |
| 9988 LabeledStatement.prototype.get$body = function() { return this.body; }; | 9991 LabeledStatement.prototype.get$body = function() { return this.body; }; |
| 9989 LabeledStatement.prototype.set$body = function(value) { return this.body = value
; }; | 9992 LabeledStatement.prototype.set$body = function(value) { return this.body = value
; }; |
| 9990 LabeledStatement.prototype.visit = function(visitor) { | 9993 LabeledStatement.prototype.visit = function(visitor) { |
| 9991 return visitor.visitLabeledStatement(this); | 9994 return visitor.visitLabeledStatement(this); |
| 9992 } | 9995 } |
| 9993 LabeledStatement.prototype.visit$1 = LabeledStatement.prototype.visit; | 9996 LabeledStatement.prototype.visit$1 = LabeledStatement.prototype.visit; |
| 9994 // ********** Code for ExpressionStatement ************** | 9997 // ********** Code for ExpressionStatement ************** |
| 9998 $inherits(ExpressionStatement, Statement); |
| 9995 function ExpressionStatement(body, span) { | 9999 function ExpressionStatement(body, span) { |
| 9996 this.body = body; | 10000 this.body = body; |
| 9997 // Initializers done | 10001 // Initializers done |
| 9998 Statement.call(this, span); | 10002 Statement.call(this, span); |
| 9999 } | 10003 } |
| 10000 $inherits(ExpressionStatement, Statement); | |
| 10001 ExpressionStatement.prototype.get$body = function() { return this.body; }; | 10004 ExpressionStatement.prototype.get$body = function() { return this.body; }; |
| 10002 ExpressionStatement.prototype.set$body = function(value) { return this.body = va
lue; }; | 10005 ExpressionStatement.prototype.set$body = function(value) { return this.body = va
lue; }; |
| 10003 ExpressionStatement.prototype.visit = function(visitor) { | 10006 ExpressionStatement.prototype.visit = function(visitor) { |
| 10004 return visitor.visitExpressionStatement(this); | 10007 return visitor.visitExpressionStatement(this); |
| 10005 } | 10008 } |
| 10006 ExpressionStatement.prototype.visit$1 = ExpressionStatement.prototype.visit; | 10009 ExpressionStatement.prototype.visit$1 = ExpressionStatement.prototype.visit; |
| 10007 // ********** Code for EmptyStatement ************** | 10010 // ********** Code for EmptyStatement ************** |
| 10011 $inherits(EmptyStatement, Statement); |
| 10008 function EmptyStatement(span) { | 10012 function EmptyStatement(span) { |
| 10009 // Initializers done | 10013 // Initializers done |
| 10010 Statement.call(this, span); | 10014 Statement.call(this, span); |
| 10011 } | 10015 } |
| 10012 $inherits(EmptyStatement, Statement); | |
| 10013 EmptyStatement.prototype.visit = function(visitor) { | 10016 EmptyStatement.prototype.visit = function(visitor) { |
| 10014 return visitor.visitEmptyStatement(this); | 10017 return visitor.visitEmptyStatement(this); |
| 10015 } | 10018 } |
| 10016 EmptyStatement.prototype.visit$1 = EmptyStatement.prototype.visit; | 10019 EmptyStatement.prototype.visit$1 = EmptyStatement.prototype.visit; |
| 10017 // ********** Code for DietStatement ************** | 10020 // ********** Code for DietStatement ************** |
| 10021 $inherits(DietStatement, Statement); |
| 10018 function DietStatement(span) { | 10022 function DietStatement(span) { |
| 10019 // Initializers done | 10023 // Initializers done |
| 10020 Statement.call(this, span); | 10024 Statement.call(this, span); |
| 10021 } | 10025 } |
| 10022 $inherits(DietStatement, Statement); | |
| 10023 DietStatement.prototype.visit = function(visitor) { | 10026 DietStatement.prototype.visit = function(visitor) { |
| 10024 return visitor.visitDietStatement(this); | 10027 return visitor.visitDietStatement(this); |
| 10025 } | 10028 } |
| 10026 DietStatement.prototype.visit$1 = DietStatement.prototype.visit; | 10029 DietStatement.prototype.visit$1 = DietStatement.prototype.visit; |
| 10027 // ********** Code for LambdaExpression ************** | 10030 // ********** Code for LambdaExpression ************** |
| 10031 $inherits(LambdaExpression, Expression); |
| 10028 function LambdaExpression(func, span) { | 10032 function LambdaExpression(func, span) { |
| 10029 this.func = func; | 10033 this.func = func; |
| 10030 // Initializers done | 10034 // Initializers done |
| 10031 Expression.call(this, span); | 10035 Expression.call(this, span); |
| 10032 } | 10036 } |
| 10033 $inherits(LambdaExpression, Expression); | |
| 10034 LambdaExpression.prototype.get$func = function() { return this.func; }; | 10037 LambdaExpression.prototype.get$func = function() { return this.func; }; |
| 10035 LambdaExpression.prototype.set$func = function(value) { return this.func = value
; }; | 10038 LambdaExpression.prototype.set$func = function(value) { return this.func = value
; }; |
| 10036 LambdaExpression.prototype.visit = function(visitor) { | 10039 LambdaExpression.prototype.visit = function(visitor) { |
| 10037 return visitor.visitLambdaExpression(this); | 10040 return visitor.visitLambdaExpression(this); |
| 10038 } | 10041 } |
| 10039 LambdaExpression.prototype.visit$1 = LambdaExpression.prototype.visit; | 10042 LambdaExpression.prototype.visit$1 = LambdaExpression.prototype.visit; |
| 10040 // ********** Code for CallExpression ************** | 10043 // ********** Code for CallExpression ************** |
| 10044 $inherits(CallExpression, Expression); |
| 10041 function CallExpression(target, arguments, span) { | 10045 function CallExpression(target, arguments, span) { |
| 10042 this.target = target; | 10046 this.target = target; |
| 10043 this.arguments = arguments; | 10047 this.arguments = arguments; |
| 10044 // Initializers done | 10048 // Initializers done |
| 10045 Expression.call(this, span); | 10049 Expression.call(this, span); |
| 10046 } | 10050 } |
| 10047 $inherits(CallExpression, Expression); | |
| 10048 CallExpression.prototype.get$target = function() { return this.target; }; | 10051 CallExpression.prototype.get$target = function() { return this.target; }; |
| 10049 CallExpression.prototype.set$target = function(value) { return this.target = val
ue; }; | 10052 CallExpression.prototype.set$target = function(value) { return this.target = val
ue; }; |
| 10050 CallExpression.prototype.get$arguments = function() { return this.arguments; }; | 10053 CallExpression.prototype.get$arguments = function() { return this.arguments; }; |
| 10051 CallExpression.prototype.set$arguments = function(value) { return this.arguments
= value; }; | 10054 CallExpression.prototype.set$arguments = function(value) { return this.arguments
= value; }; |
| 10052 CallExpression.prototype.visit = function(visitor) { | 10055 CallExpression.prototype.visit = function(visitor) { |
| 10053 return visitor.visitCallExpression(this); | 10056 return visitor.visitCallExpression(this); |
| 10054 } | 10057 } |
| 10055 CallExpression.prototype.visit$1 = CallExpression.prototype.visit; | 10058 CallExpression.prototype.visit$1 = CallExpression.prototype.visit; |
| 10056 // ********** Code for IndexExpression ************** | 10059 // ********** Code for IndexExpression ************** |
| 10060 $inherits(IndexExpression, Expression); |
| 10057 function IndexExpression(target, index, span) { | 10061 function IndexExpression(target, index, span) { |
| 10058 this.target = target; | 10062 this.target = target; |
| 10059 this.index = index; | 10063 this.index = index; |
| 10060 // Initializers done | 10064 // Initializers done |
| 10061 Expression.call(this, span); | 10065 Expression.call(this, span); |
| 10062 } | 10066 } |
| 10063 $inherits(IndexExpression, Expression); | |
| 10064 IndexExpression.prototype.get$target = function() { return this.target; }; | 10067 IndexExpression.prototype.get$target = function() { return this.target; }; |
| 10065 IndexExpression.prototype.set$target = function(value) { return this.target = va
lue; }; | 10068 IndexExpression.prototype.set$target = function(value) { return this.target = va
lue; }; |
| 10066 IndexExpression.prototype.visit = function(visitor) { | 10069 IndexExpression.prototype.visit = function(visitor) { |
| 10067 return visitor.visitIndexExpression(this); | 10070 return visitor.visitIndexExpression(this); |
| 10068 } | 10071 } |
| 10069 IndexExpression.prototype.visit$1 = IndexExpression.prototype.visit; | 10072 IndexExpression.prototype.visit$1 = IndexExpression.prototype.visit; |
| 10070 // ********** Code for BinaryExpression ************** | 10073 // ********** Code for BinaryExpression ************** |
| 10074 $inherits(BinaryExpression, Expression); |
| 10071 function BinaryExpression(op, x, y, span) { | 10075 function BinaryExpression(op, x, y, span) { |
| 10072 this.op = op; | 10076 this.op = op; |
| 10073 this.x = x; | 10077 this.x = x; |
| 10074 this.y = y; | 10078 this.y = y; |
| 10075 // Initializers done | 10079 // Initializers done |
| 10076 Expression.call(this, span); | 10080 Expression.call(this, span); |
| 10077 } | 10081 } |
| 10078 $inherits(BinaryExpression, Expression); | |
| 10079 BinaryExpression.prototype.get$op = function() { return this.op; }; | 10082 BinaryExpression.prototype.get$op = function() { return this.op; }; |
| 10080 BinaryExpression.prototype.set$op = function(value) { return this.op = value; }; | 10083 BinaryExpression.prototype.set$op = function(value) { return this.op = value; }; |
| 10081 BinaryExpression.prototype.get$x = function() { return this.x; }; | 10084 BinaryExpression.prototype.get$x = function() { return this.x; }; |
| 10082 BinaryExpression.prototype.set$x = function(value) { return this.x = value; }; | 10085 BinaryExpression.prototype.set$x = function(value) { return this.x = value; }; |
| 10083 BinaryExpression.prototype.get$y = function() { return this.y; }; | 10086 BinaryExpression.prototype.get$y = function() { return this.y; }; |
| 10084 BinaryExpression.prototype.set$y = function(value) { return this.y = value; }; | 10087 BinaryExpression.prototype.set$y = function(value) { return this.y = value; }; |
| 10085 BinaryExpression.prototype.visit = function(visitor) { | 10088 BinaryExpression.prototype.visit = function(visitor) { |
| 10086 return visitor.visitBinaryExpression$1(this); | 10089 return visitor.visitBinaryExpression$1(this); |
| 10087 } | 10090 } |
| 10088 BinaryExpression.prototype.visit$1 = BinaryExpression.prototype.visit; | 10091 BinaryExpression.prototype.visit$1 = BinaryExpression.prototype.visit; |
| 10089 // ********** Code for UnaryExpression ************** | 10092 // ********** Code for UnaryExpression ************** |
| 10093 $inherits(UnaryExpression, Expression); |
| 10090 function UnaryExpression(op, self, span) { | 10094 function UnaryExpression(op, self, span) { |
| 10091 this.op = op; | 10095 this.op = op; |
| 10092 this.self = self; | 10096 this.self = self; |
| 10093 // Initializers done | 10097 // Initializers done |
| 10094 Expression.call(this, span); | 10098 Expression.call(this, span); |
| 10095 } | 10099 } |
| 10096 $inherits(UnaryExpression, Expression); | |
| 10097 UnaryExpression.prototype.get$op = function() { return this.op; }; | 10100 UnaryExpression.prototype.get$op = function() { return this.op; }; |
| 10098 UnaryExpression.prototype.set$op = function(value) { return this.op = value; }; | 10101 UnaryExpression.prototype.set$op = function(value) { return this.op = value; }; |
| 10099 UnaryExpression.prototype.get$self = function() { return this.self; }; | 10102 UnaryExpression.prototype.get$self = function() { return this.self; }; |
| 10100 UnaryExpression.prototype.set$self = function(value) { return this.self = value;
}; | 10103 UnaryExpression.prototype.set$self = function(value) { return this.self = value;
}; |
| 10101 UnaryExpression.prototype.visit = function(visitor) { | 10104 UnaryExpression.prototype.visit = function(visitor) { |
| 10102 return visitor.visitUnaryExpression(this); | 10105 return visitor.visitUnaryExpression(this); |
| 10103 } | 10106 } |
| 10104 UnaryExpression.prototype.visit$1 = UnaryExpression.prototype.visit; | 10107 UnaryExpression.prototype.visit$1 = UnaryExpression.prototype.visit; |
| 10105 // ********** Code for PostfixExpression ************** | 10108 // ********** Code for PostfixExpression ************** |
| 10109 $inherits(PostfixExpression, Expression); |
| 10106 function PostfixExpression(body, op, span) { | 10110 function PostfixExpression(body, op, span) { |
| 10107 this.body = body; | 10111 this.body = body; |
| 10108 this.op = op; | 10112 this.op = op; |
| 10109 // Initializers done | 10113 // Initializers done |
| 10110 Expression.call(this, span); | 10114 Expression.call(this, span); |
| 10111 } | 10115 } |
| 10112 $inherits(PostfixExpression, Expression); | |
| 10113 PostfixExpression.prototype.get$body = function() { return this.body; }; | 10116 PostfixExpression.prototype.get$body = function() { return this.body; }; |
| 10114 PostfixExpression.prototype.set$body = function(value) { return this.body = valu
e; }; | 10117 PostfixExpression.prototype.set$body = function(value) { return this.body = valu
e; }; |
| 10115 PostfixExpression.prototype.get$op = function() { return this.op; }; | 10118 PostfixExpression.prototype.get$op = function() { return this.op; }; |
| 10116 PostfixExpression.prototype.set$op = function(value) { return this.op = value; }
; | 10119 PostfixExpression.prototype.set$op = function(value) { return this.op = value; }
; |
| 10117 PostfixExpression.prototype.visit = function(visitor) { | 10120 PostfixExpression.prototype.visit = function(visitor) { |
| 10118 return visitor.visitPostfixExpression$1(this); | 10121 return visitor.visitPostfixExpression$1(this); |
| 10119 } | 10122 } |
| 10120 PostfixExpression.prototype.visit$1 = PostfixExpression.prototype.visit; | 10123 PostfixExpression.prototype.visit$1 = PostfixExpression.prototype.visit; |
| 10121 // ********** Code for NewExpression ************** | 10124 // ********** Code for NewExpression ************** |
| 10125 $inherits(NewExpression, Expression); |
| 10122 function NewExpression(isConst, type, name, arguments, span) { | 10126 function NewExpression(isConst, type, name, arguments, span) { |
| 10123 this.isConst = isConst; | 10127 this.isConst = isConst; |
| 10124 this.type = type; | 10128 this.type = type; |
| 10125 this.name = name; | 10129 this.name = name; |
| 10126 this.arguments = arguments; | 10130 this.arguments = arguments; |
| 10127 // Initializers done | 10131 // Initializers done |
| 10128 Expression.call(this, span); | 10132 Expression.call(this, span); |
| 10129 } | 10133 } |
| 10130 $inherits(NewExpression, Expression); | |
| 10131 NewExpression.prototype.get$isConst = function() { return this.isConst; }; | 10134 NewExpression.prototype.get$isConst = function() { return this.isConst; }; |
| 10132 NewExpression.prototype.set$isConst = function(value) { return this.isConst = va
lue; }; | 10135 NewExpression.prototype.set$isConst = function(value) { return this.isConst = va
lue; }; |
| 10133 NewExpression.prototype.get$type = function() { return this.type; }; | 10136 NewExpression.prototype.get$type = function() { return this.type; }; |
| 10134 NewExpression.prototype.set$type = function(value) { return this.type = value; }
; | 10137 NewExpression.prototype.set$type = function(value) { return this.type = value; }
; |
| 10135 NewExpression.prototype.get$name = function() { return this.name; }; | 10138 NewExpression.prototype.get$name = function() { return this.name; }; |
| 10136 NewExpression.prototype.set$name = function(value) { return this.name = value; }
; | 10139 NewExpression.prototype.set$name = function(value) { return this.name = value; }
; |
| 10137 NewExpression.prototype.get$arguments = function() { return this.arguments; }; | 10140 NewExpression.prototype.get$arguments = function() { return this.arguments; }; |
| 10138 NewExpression.prototype.set$arguments = function(value) { return this.arguments
= value; }; | 10141 NewExpression.prototype.set$arguments = function(value) { return this.arguments
= value; }; |
| 10139 NewExpression.prototype.visit = function(visitor) { | 10142 NewExpression.prototype.visit = function(visitor) { |
| 10140 return visitor.visitNewExpression(this); | 10143 return visitor.visitNewExpression(this); |
| 10141 } | 10144 } |
| 10142 NewExpression.prototype.visit$1 = NewExpression.prototype.visit; | 10145 NewExpression.prototype.visit$1 = NewExpression.prototype.visit; |
| 10143 // ********** Code for ListExpression ************** | 10146 // ********** Code for ListExpression ************** |
| 10147 $inherits(ListExpression, Expression); |
| 10144 function ListExpression(isConst, type, values, span) { | 10148 function ListExpression(isConst, type, values, span) { |
| 10145 this.isConst = isConst; | 10149 this.isConst = isConst; |
| 10146 this.type = type; | 10150 this.type = type; |
| 10147 this.values = values; | 10151 this.values = values; |
| 10148 // Initializers done | 10152 // Initializers done |
| 10149 Expression.call(this, span); | 10153 Expression.call(this, span); |
| 10150 } | 10154 } |
| 10151 $inherits(ListExpression, Expression); | |
| 10152 ListExpression.prototype.get$isConst = function() { return this.isConst; }; | 10155 ListExpression.prototype.get$isConst = function() { return this.isConst; }; |
| 10153 ListExpression.prototype.set$isConst = function(value) { return this.isConst = v
alue; }; | 10156 ListExpression.prototype.set$isConst = function(value) { return this.isConst = v
alue; }; |
| 10154 ListExpression.prototype.get$type = function() { return this.type; }; | 10157 ListExpression.prototype.get$type = function() { return this.type; }; |
| 10155 ListExpression.prototype.set$type = function(value) { return this.type = value;
}; | 10158 ListExpression.prototype.set$type = function(value) { return this.type = value;
}; |
| 10156 ListExpression.prototype.get$values = function() { return this.values; }; | 10159 ListExpression.prototype.get$values = function() { return this.values; }; |
| 10157 ListExpression.prototype.set$values = function(value) { return this.values = val
ue; }; | 10160 ListExpression.prototype.set$values = function(value) { return this.values = val
ue; }; |
| 10158 ListExpression.prototype.visit = function(visitor) { | 10161 ListExpression.prototype.visit = function(visitor) { |
| 10159 return visitor.visitListExpression(this); | 10162 return visitor.visitListExpression(this); |
| 10160 } | 10163 } |
| 10161 ListExpression.prototype.visit$1 = ListExpression.prototype.visit; | 10164 ListExpression.prototype.visit$1 = ListExpression.prototype.visit; |
| 10162 // ********** Code for MapExpression ************** | 10165 // ********** Code for MapExpression ************** |
| 10166 $inherits(MapExpression, Expression); |
| 10163 function MapExpression(isConst, type, items, span) { | 10167 function MapExpression(isConst, type, items, span) { |
| 10164 this.isConst = isConst; | 10168 this.isConst = isConst; |
| 10165 this.type = type; | 10169 this.type = type; |
| 10166 this.items = items; | 10170 this.items = items; |
| 10167 // Initializers done | 10171 // Initializers done |
| 10168 Expression.call(this, span); | 10172 Expression.call(this, span); |
| 10169 } | 10173 } |
| 10170 $inherits(MapExpression, Expression); | |
| 10171 MapExpression.prototype.get$isConst = function() { return this.isConst; }; | 10174 MapExpression.prototype.get$isConst = function() { return this.isConst; }; |
| 10172 MapExpression.prototype.set$isConst = function(value) { return this.isConst = va
lue; }; | 10175 MapExpression.prototype.set$isConst = function(value) { return this.isConst = va
lue; }; |
| 10173 MapExpression.prototype.get$type = function() { return this.type; }; | 10176 MapExpression.prototype.get$type = function() { return this.type; }; |
| 10174 MapExpression.prototype.set$type = function(value) { return this.type = value; }
; | 10177 MapExpression.prototype.set$type = function(value) { return this.type = value; }
; |
| 10175 MapExpression.prototype.visit = function(visitor) { | 10178 MapExpression.prototype.visit = function(visitor) { |
| 10176 return visitor.visitMapExpression(this); | 10179 return visitor.visitMapExpression(this); |
| 10177 } | 10180 } |
| 10178 MapExpression.prototype.visit$1 = MapExpression.prototype.visit; | 10181 MapExpression.prototype.visit$1 = MapExpression.prototype.visit; |
| 10179 // ********** Code for ConditionalExpression ************** | 10182 // ********** Code for ConditionalExpression ************** |
| 10183 $inherits(ConditionalExpression, Expression); |
| 10180 function ConditionalExpression(test, trueBranch, falseBranch, span) { | 10184 function ConditionalExpression(test, trueBranch, falseBranch, span) { |
| 10181 this.test = test; | 10185 this.test = test; |
| 10182 this.trueBranch = trueBranch; | 10186 this.trueBranch = trueBranch; |
| 10183 this.falseBranch = falseBranch; | 10187 this.falseBranch = falseBranch; |
| 10184 // Initializers done | 10188 // Initializers done |
| 10185 Expression.call(this, span); | 10189 Expression.call(this, span); |
| 10186 } | 10190 } |
| 10187 $inherits(ConditionalExpression, Expression); | |
| 10188 ConditionalExpression.prototype.visit = function(visitor) { | 10191 ConditionalExpression.prototype.visit = function(visitor) { |
| 10189 return visitor.visitConditionalExpression(this); | 10192 return visitor.visitConditionalExpression(this); |
| 10190 } | 10193 } |
| 10191 ConditionalExpression.prototype.visit$1 = ConditionalExpression.prototype.visit; | 10194 ConditionalExpression.prototype.visit$1 = ConditionalExpression.prototype.visit; |
| 10192 // ********** Code for IsExpression ************** | 10195 // ********** Code for IsExpression ************** |
| 10196 $inherits(IsExpression, Expression); |
| 10193 function IsExpression(isTrue, x, type, span) { | 10197 function IsExpression(isTrue, x, type, span) { |
| 10194 this.isTrue = isTrue; | 10198 this.isTrue = isTrue; |
| 10195 this.x = x; | 10199 this.x = x; |
| 10196 this.type = type; | 10200 this.type = type; |
| 10197 // Initializers done | 10201 // Initializers done |
| 10198 Expression.call(this, span); | 10202 Expression.call(this, span); |
| 10199 } | 10203 } |
| 10200 $inherits(IsExpression, Expression); | |
| 10201 IsExpression.prototype.get$x = function() { return this.x; }; | 10204 IsExpression.prototype.get$x = function() { return this.x; }; |
| 10202 IsExpression.prototype.set$x = function(value) { return this.x = value; }; | 10205 IsExpression.prototype.set$x = function(value) { return this.x = value; }; |
| 10203 IsExpression.prototype.get$type = function() { return this.type; }; | 10206 IsExpression.prototype.get$type = function() { return this.type; }; |
| 10204 IsExpression.prototype.set$type = function(value) { return this.type = value; }; | 10207 IsExpression.prototype.set$type = function(value) { return this.type = value; }; |
| 10205 IsExpression.prototype.visit = function(visitor) { | 10208 IsExpression.prototype.visit = function(visitor) { |
| 10206 return visitor.visitIsExpression(this); | 10209 return visitor.visitIsExpression(this); |
| 10207 } | 10210 } |
| 10208 IsExpression.prototype.visit$1 = IsExpression.prototype.visit; | 10211 IsExpression.prototype.visit$1 = IsExpression.prototype.visit; |
| 10209 // ********** Code for ParenExpression ************** | 10212 // ********** Code for ParenExpression ************** |
| 10213 $inherits(ParenExpression, Expression); |
| 10210 function ParenExpression(body, span) { | 10214 function ParenExpression(body, span) { |
| 10211 this.body = body; | 10215 this.body = body; |
| 10212 // Initializers done | 10216 // Initializers done |
| 10213 Expression.call(this, span); | 10217 Expression.call(this, span); |
| 10214 } | 10218 } |
| 10215 $inherits(ParenExpression, Expression); | |
| 10216 ParenExpression.prototype.get$body = function() { return this.body; }; | 10219 ParenExpression.prototype.get$body = function() { return this.body; }; |
| 10217 ParenExpression.prototype.set$body = function(value) { return this.body = value;
}; | 10220 ParenExpression.prototype.set$body = function(value) { return this.body = value;
}; |
| 10218 ParenExpression.prototype.visit = function(visitor) { | 10221 ParenExpression.prototype.visit = function(visitor) { |
| 10219 return visitor.visitParenExpression(this); | 10222 return visitor.visitParenExpression(this); |
| 10220 } | 10223 } |
| 10221 ParenExpression.prototype.visit$1 = ParenExpression.prototype.visit; | 10224 ParenExpression.prototype.visit$1 = ParenExpression.prototype.visit; |
| 10222 // ********** Code for AwaitExpression ************** | 10225 // ********** Code for AwaitExpression ************** |
| 10226 $inherits(AwaitExpression, Expression); |
| 10223 function AwaitExpression(body, span) { | 10227 function AwaitExpression(body, span) { |
| 10224 this.body = body; | 10228 this.body = body; |
| 10225 // Initializers done | 10229 // Initializers done |
| 10226 Expression.call(this, span); | 10230 Expression.call(this, span); |
| 10227 } | 10231 } |
| 10228 $inherits(AwaitExpression, Expression); | |
| 10229 AwaitExpression.prototype.get$body = function() { return this.body; }; | 10232 AwaitExpression.prototype.get$body = function() { return this.body; }; |
| 10230 AwaitExpression.prototype.set$body = function(value) { return this.body = value;
}; | 10233 AwaitExpression.prototype.set$body = function(value) { return this.body = value;
}; |
| 10231 AwaitExpression.prototype.visit = function(visitor) { | 10234 AwaitExpression.prototype.visit = function(visitor) { |
| 10232 return visitor.visitAwaitExpression(this); | 10235 return visitor.visitAwaitExpression(this); |
| 10233 } | 10236 } |
| 10234 AwaitExpression.prototype.visit$1 = AwaitExpression.prototype.visit; | 10237 AwaitExpression.prototype.visit$1 = AwaitExpression.prototype.visit; |
| 10235 // ********** Code for DotExpression ************** | 10238 // ********** Code for DotExpression ************** |
| 10239 $inherits(DotExpression, Expression); |
| 10236 function DotExpression(self, name, span) { | 10240 function DotExpression(self, name, span) { |
| 10237 this.self = self; | 10241 this.self = self; |
| 10238 this.name = name; | 10242 this.name = name; |
| 10239 // Initializers done | 10243 // Initializers done |
| 10240 Expression.call(this, span); | 10244 Expression.call(this, span); |
| 10241 } | 10245 } |
| 10242 $inherits(DotExpression, Expression); | |
| 10243 DotExpression.prototype.get$self = function() { return this.self; }; | 10246 DotExpression.prototype.get$self = function() { return this.self; }; |
| 10244 DotExpression.prototype.set$self = function(value) { return this.self = value; }
; | 10247 DotExpression.prototype.set$self = function(value) { return this.self = value; }
; |
| 10245 DotExpression.prototype.get$name = function() { return this.name; }; | 10248 DotExpression.prototype.get$name = function() { return this.name; }; |
| 10246 DotExpression.prototype.set$name = function(value) { return this.name = value; }
; | 10249 DotExpression.prototype.set$name = function(value) { return this.name = value; }
; |
| 10247 DotExpression.prototype.visit = function(visitor) { | 10250 DotExpression.prototype.visit = function(visitor) { |
| 10248 return visitor.visitDotExpression(this); | 10251 return visitor.visitDotExpression(this); |
| 10249 } | 10252 } |
| 10250 DotExpression.prototype.visit$1 = DotExpression.prototype.visit; | 10253 DotExpression.prototype.visit$1 = DotExpression.prototype.visit; |
| 10251 // ********** Code for VarExpression ************** | 10254 // ********** Code for VarExpression ************** |
| 10255 $inherits(VarExpression, Expression); |
| 10252 function VarExpression(name, span) { | 10256 function VarExpression(name, span) { |
| 10253 this.name = name; | 10257 this.name = name; |
| 10254 // Initializers done | 10258 // Initializers done |
| 10255 Expression.call(this, span); | 10259 Expression.call(this, span); |
| 10256 } | 10260 } |
| 10257 $inherits(VarExpression, Expression); | |
| 10258 VarExpression.prototype.get$name = function() { return this.name; }; | 10261 VarExpression.prototype.get$name = function() { return this.name; }; |
| 10259 VarExpression.prototype.set$name = function(value) { return this.name = value; }
; | 10262 VarExpression.prototype.set$name = function(value) { return this.name = value; }
; |
| 10260 VarExpression.prototype.visit = function(visitor) { | 10263 VarExpression.prototype.visit = function(visitor) { |
| 10261 return visitor.visitVarExpression(this); | 10264 return visitor.visitVarExpression(this); |
| 10262 } | 10265 } |
| 10263 VarExpression.prototype.visit$1 = VarExpression.prototype.visit; | 10266 VarExpression.prototype.visit$1 = VarExpression.prototype.visit; |
| 10264 // ********** Code for ThisExpression ************** | 10267 // ********** Code for ThisExpression ************** |
| 10268 $inherits(ThisExpression, Expression); |
| 10265 function ThisExpression(span) { | 10269 function ThisExpression(span) { |
| 10266 // Initializers done | 10270 // Initializers done |
| 10267 Expression.call(this, span); | 10271 Expression.call(this, span); |
| 10268 } | 10272 } |
| 10269 $inherits(ThisExpression, Expression); | |
| 10270 ThisExpression.prototype.visit = function(visitor) { | 10273 ThisExpression.prototype.visit = function(visitor) { |
| 10271 return visitor.visitThisExpression(this); | 10274 return visitor.visitThisExpression(this); |
| 10272 } | 10275 } |
| 10273 ThisExpression.prototype.visit$1 = ThisExpression.prototype.visit; | 10276 ThisExpression.prototype.visit$1 = ThisExpression.prototype.visit; |
| 10274 // ********** Code for SuperExpression ************** | 10277 // ********** Code for SuperExpression ************** |
| 10278 $inherits(SuperExpression, Expression); |
| 10275 function SuperExpression(span) { | 10279 function SuperExpression(span) { |
| 10276 // Initializers done | 10280 // Initializers done |
| 10277 Expression.call(this, span); | 10281 Expression.call(this, span); |
| 10278 } | 10282 } |
| 10279 $inherits(SuperExpression, Expression); | |
| 10280 SuperExpression.prototype.visit = function(visitor) { | 10283 SuperExpression.prototype.visit = function(visitor) { |
| 10281 return visitor.visitSuperExpression(this); | 10284 return visitor.visitSuperExpression(this); |
| 10282 } | 10285 } |
| 10283 SuperExpression.prototype.visit$1 = SuperExpression.prototype.visit; | 10286 SuperExpression.prototype.visit$1 = SuperExpression.prototype.visit; |
| 10284 // ********** Code for NullExpression ************** | 10287 // ********** Code for NullExpression ************** |
| 10288 $inherits(NullExpression, Expression); |
| 10285 function NullExpression(span) { | 10289 function NullExpression(span) { |
| 10286 // Initializers done | 10290 // Initializers done |
| 10287 Expression.call(this, span); | 10291 Expression.call(this, span); |
| 10288 } | 10292 } |
| 10289 $inherits(NullExpression, Expression); | |
| 10290 NullExpression.prototype.visit = function(visitor) { | 10293 NullExpression.prototype.visit = function(visitor) { |
| 10291 return visitor.visitNullExpression(this); | 10294 return visitor.visitNullExpression(this); |
| 10292 } | 10295 } |
| 10293 NullExpression.prototype.visit$1 = NullExpression.prototype.visit; | 10296 NullExpression.prototype.visit$1 = NullExpression.prototype.visit; |
| 10294 // ********** Code for LiteralExpression ************** | 10297 // ********** Code for LiteralExpression ************** |
| 10298 $inherits(LiteralExpression, Expression); |
| 10295 function LiteralExpression(value, type, text, span) { | 10299 function LiteralExpression(value, type, text, span) { |
| 10296 this.value = value; | 10300 this.value = value; |
| 10297 this.type = type; | 10301 this.type = type; |
| 10298 this.text = text; | 10302 this.text = text; |
| 10299 // Initializers done | 10303 // Initializers done |
| 10300 Expression.call(this, span); | 10304 Expression.call(this, span); |
| 10301 } | 10305 } |
| 10302 $inherits(LiteralExpression, Expression); | |
| 10303 LiteralExpression.prototype.get$value = function() { return this.value; }; | 10306 LiteralExpression.prototype.get$value = function() { return this.value; }; |
| 10304 LiteralExpression.prototype.set$value = function(value) { return this.value = va
lue; }; | 10307 LiteralExpression.prototype.set$value = function(value) { return this.value = va
lue; }; |
| 10305 LiteralExpression.prototype.get$type = function() { return this.type; }; | 10308 LiteralExpression.prototype.get$type = function() { return this.type; }; |
| 10306 LiteralExpression.prototype.set$type = function(value) { return this.type = valu
e; }; | 10309 LiteralExpression.prototype.set$type = function(value) { return this.type = valu
e; }; |
| 10307 LiteralExpression.prototype.get$text = function() { return this.text; }; | 10310 LiteralExpression.prototype.get$text = function() { return this.text; }; |
| 10308 LiteralExpression.prototype.set$text = function(value) { return this.text = valu
e; }; | 10311 LiteralExpression.prototype.set$text = function(value) { return this.text = valu
e; }; |
| 10309 LiteralExpression.prototype.visit = function(visitor) { | 10312 LiteralExpression.prototype.visit = function(visitor) { |
| 10310 return visitor.visitLiteralExpression(this); | 10313 return visitor.visitLiteralExpression(this); |
| 10311 } | 10314 } |
| 10312 LiteralExpression.prototype.visit$1 = LiteralExpression.prototype.visit; | 10315 LiteralExpression.prototype.visit$1 = LiteralExpression.prototype.visit; |
| 10313 // ********** Code for NameTypeReference ************** | 10316 // ********** Code for NameTypeReference ************** |
| 10317 $inherits(NameTypeReference, TypeReference); |
| 10314 function NameTypeReference(isFinal, name, names, span) { | 10318 function NameTypeReference(isFinal, name, names, span) { |
| 10315 this.isFinal = isFinal; | 10319 this.isFinal = isFinal; |
| 10316 this.name = name; | 10320 this.name = name; |
| 10317 this.names = names; | 10321 this.names = names; |
| 10318 // Initializers done | 10322 // Initializers done |
| 10319 TypeReference.call(this, span); | 10323 TypeReference.call(this, span); |
| 10320 } | 10324 } |
| 10321 $inherits(NameTypeReference, TypeReference); | |
| 10322 NameTypeReference.prototype.get$isFinal = function() { return this.isFinal; }; | 10325 NameTypeReference.prototype.get$isFinal = function() { return this.isFinal; }; |
| 10323 NameTypeReference.prototype.set$isFinal = function(value) { return this.isFinal
= value; }; | 10326 NameTypeReference.prototype.set$isFinal = function(value) { return this.isFinal
= value; }; |
| 10324 NameTypeReference.prototype.get$name = function() { return this.name; }; | 10327 NameTypeReference.prototype.get$name = function() { return this.name; }; |
| 10325 NameTypeReference.prototype.set$name = function(value) { return this.name = valu
e; }; | 10328 NameTypeReference.prototype.set$name = function(value) { return this.name = valu
e; }; |
| 10326 NameTypeReference.prototype.get$names = function() { return this.names; }; | 10329 NameTypeReference.prototype.get$names = function() { return this.names; }; |
| 10327 NameTypeReference.prototype.set$names = function(value) { return this.names = va
lue; }; | 10330 NameTypeReference.prototype.set$names = function(value) { return this.names = va
lue; }; |
| 10328 NameTypeReference.prototype.visit = function(visitor) { | 10331 NameTypeReference.prototype.visit = function(visitor) { |
| 10329 return visitor.visitNameTypeReference(this); | 10332 return visitor.visitNameTypeReference(this); |
| 10330 } | 10333 } |
| 10331 NameTypeReference.prototype.visit$1 = NameTypeReference.prototype.visit; | 10334 NameTypeReference.prototype.visit$1 = NameTypeReference.prototype.visit; |
| 10332 // ********** Code for GenericTypeReference ************** | 10335 // ********** Code for GenericTypeReference ************** |
| 10336 $inherits(GenericTypeReference, TypeReference); |
| 10333 function GenericTypeReference(baseType, typeArguments, depth, span) { | 10337 function GenericTypeReference(baseType, typeArguments, depth, span) { |
| 10334 this.baseType = baseType; | 10338 this.baseType = baseType; |
| 10335 this.typeArguments = typeArguments; | 10339 this.typeArguments = typeArguments; |
| 10336 this.depth = depth; | 10340 this.depth = depth; |
| 10337 // Initializers done | 10341 // Initializers done |
| 10338 TypeReference.call(this, span); | 10342 TypeReference.call(this, span); |
| 10339 } | 10343 } |
| 10340 $inherits(GenericTypeReference, TypeReference); | |
| 10341 GenericTypeReference.prototype.get$baseType = function() { return this.baseType;
}; | 10344 GenericTypeReference.prototype.get$baseType = function() { return this.baseType;
}; |
| 10342 GenericTypeReference.prototype.set$baseType = function(value) { return this.base
Type = value; }; | 10345 GenericTypeReference.prototype.set$baseType = function(value) { return this.base
Type = value; }; |
| 10343 GenericTypeReference.prototype.get$depth = function() { return this.depth; }; | 10346 GenericTypeReference.prototype.get$depth = function() { return this.depth; }; |
| 10344 GenericTypeReference.prototype.set$depth = function(value) { return this.depth =
value; }; | 10347 GenericTypeReference.prototype.set$depth = function(value) { return this.depth =
value; }; |
| 10345 GenericTypeReference.prototype.visit = function(visitor) { | 10348 GenericTypeReference.prototype.visit = function(visitor) { |
| 10346 return visitor.visitGenericTypeReference(this); | 10349 return visitor.visitGenericTypeReference(this); |
| 10347 } | 10350 } |
| 10348 GenericTypeReference.prototype.visit$1 = GenericTypeReference.prototype.visit; | 10351 GenericTypeReference.prototype.visit$1 = GenericTypeReference.prototype.visit; |
| 10349 // ********** Code for FunctionTypeReference ************** | 10352 // ********** Code for FunctionTypeReference ************** |
| 10353 $inherits(FunctionTypeReference, TypeReference); |
| 10350 function FunctionTypeReference(isFinal, func, span) { | 10354 function FunctionTypeReference(isFinal, func, span) { |
| 10351 this.isFinal = isFinal; | 10355 this.isFinal = isFinal; |
| 10352 this.func = func; | 10356 this.func = func; |
| 10353 // Initializers done | 10357 // Initializers done |
| 10354 TypeReference.call(this, span); | 10358 TypeReference.call(this, span); |
| 10355 } | 10359 } |
| 10356 $inherits(FunctionTypeReference, TypeReference); | |
| 10357 FunctionTypeReference.prototype.get$isFinal = function() { return this.isFinal;
}; | 10360 FunctionTypeReference.prototype.get$isFinal = function() { return this.isFinal;
}; |
| 10358 FunctionTypeReference.prototype.set$isFinal = function(value) { return this.isFi
nal = value; }; | 10361 FunctionTypeReference.prototype.set$isFinal = function(value) { return this.isFi
nal = value; }; |
| 10359 FunctionTypeReference.prototype.get$func = function() { return this.func; }; | 10362 FunctionTypeReference.prototype.get$func = function() { return this.func; }; |
| 10360 FunctionTypeReference.prototype.set$func = function(value) { return this.func =
value; }; | 10363 FunctionTypeReference.prototype.set$func = function(value) { return this.func =
value; }; |
| 10361 FunctionTypeReference.prototype.visit = function(visitor) { | 10364 FunctionTypeReference.prototype.visit = function(visitor) { |
| 10362 return visitor.visitFunctionTypeReference(this); | 10365 return visitor.visitFunctionTypeReference(this); |
| 10363 } | 10366 } |
| 10364 FunctionTypeReference.prototype.visit$1 = FunctionTypeReference.prototype.visit; | 10367 FunctionTypeReference.prototype.visit$1 = FunctionTypeReference.prototype.visit; |
| 10365 // ********** Code for ArgumentNode ************** | 10368 // ********** Code for ArgumentNode ************** |
| 10369 $inherits(ArgumentNode, Node); |
| 10366 function ArgumentNode(label, value, span) { | 10370 function ArgumentNode(label, value, span) { |
| 10367 this.label = label; | 10371 this.label = label; |
| 10368 this.value = value; | 10372 this.value = value; |
| 10369 // Initializers done | 10373 // Initializers done |
| 10370 Node.call(this, span); | 10374 Node.call(this, span); |
| 10371 } | 10375 } |
| 10372 $inherits(ArgumentNode, Node); | |
| 10373 ArgumentNode.prototype.get$label = function() { return this.label; }; | 10376 ArgumentNode.prototype.get$label = function() { return this.label; }; |
| 10374 ArgumentNode.prototype.set$label = function(value) { return this.label = value;
}; | 10377 ArgumentNode.prototype.set$label = function(value) { return this.label = value;
}; |
| 10375 ArgumentNode.prototype.get$value = function() { return this.value; }; | 10378 ArgumentNode.prototype.get$value = function() { return this.value; }; |
| 10376 ArgumentNode.prototype.set$value = function(value) { return this.value = value;
}; | 10379 ArgumentNode.prototype.set$value = function(value) { return this.value = value;
}; |
| 10377 ArgumentNode.prototype.visit = function(visitor) { | 10380 ArgumentNode.prototype.visit = function(visitor) { |
| 10378 return visitor.visitArgumentNode(this); | 10381 return visitor.visitArgumentNode(this); |
| 10379 } | 10382 } |
| 10380 ArgumentNode.prototype.visit$1 = ArgumentNode.prototype.visit; | 10383 ArgumentNode.prototype.visit$1 = ArgumentNode.prototype.visit; |
| 10381 // ********** Code for FormalNode ************** | 10384 // ********** Code for FormalNode ************** |
| 10385 $inherits(FormalNode, Node); |
| 10382 function FormalNode(isThis, isRest, type, name, value, span) { | 10386 function FormalNode(isThis, isRest, type, name, value, span) { |
| 10383 this.isThis = isThis; | 10387 this.isThis = isThis; |
| 10384 this.isRest = isRest; | 10388 this.isRest = isRest; |
| 10385 this.type = type; | 10389 this.type = type; |
| 10386 this.name = name; | 10390 this.name = name; |
| 10387 this.value = value; | 10391 this.value = value; |
| 10388 // Initializers done | 10392 // Initializers done |
| 10389 Node.call(this, span); | 10393 Node.call(this, span); |
| 10390 } | 10394 } |
| 10391 $inherits(FormalNode, Node); | |
| 10392 FormalNode.prototype.get$type = function() { return this.type; }; | 10395 FormalNode.prototype.get$type = function() { return this.type; }; |
| 10393 FormalNode.prototype.set$type = function(value) { return this.type = value; }; | 10396 FormalNode.prototype.set$type = function(value) { return this.type = value; }; |
| 10394 FormalNode.prototype.get$name = function() { return this.name; }; | 10397 FormalNode.prototype.get$name = function() { return this.name; }; |
| 10395 FormalNode.prototype.set$name = function(value) { return this.name = value; }; | 10398 FormalNode.prototype.set$name = function(value) { return this.name = value; }; |
| 10396 FormalNode.prototype.get$value = function() { return this.value; }; | 10399 FormalNode.prototype.get$value = function() { return this.value; }; |
| 10397 FormalNode.prototype.set$value = function(value) { return this.value = value; }; | 10400 FormalNode.prototype.set$value = function(value) { return this.value = value; }; |
| 10398 FormalNode.prototype.visit = function(visitor) { | 10401 FormalNode.prototype.visit = function(visitor) { |
| 10399 return visitor.visitFormalNode(this); | 10402 return visitor.visitFormalNode(this); |
| 10400 } | 10403 } |
| 10401 FormalNode.prototype.visit$1 = FormalNode.prototype.visit; | 10404 FormalNode.prototype.visit$1 = FormalNode.prototype.visit; |
| 10402 // ********** Code for CatchNode ************** | 10405 // ********** Code for CatchNode ************** |
| 10406 $inherits(CatchNode, Node); |
| 10403 function CatchNode(exception, trace, body, span) { | 10407 function CatchNode(exception, trace, body, span) { |
| 10404 this.exception = exception; | 10408 this.exception = exception; |
| 10405 this.trace = trace; | 10409 this.trace = trace; |
| 10406 this.body = body; | 10410 this.body = body; |
| 10407 // Initializers done | 10411 // Initializers done |
| 10408 Node.call(this, span); | 10412 Node.call(this, span); |
| 10409 } | 10413 } |
| 10410 $inherits(CatchNode, Node); | |
| 10411 CatchNode.prototype.get$exception = function() { return this.exception; }; | 10414 CatchNode.prototype.get$exception = function() { return this.exception; }; |
| 10412 CatchNode.prototype.set$exception = function(value) { return this.exception = va
lue; }; | 10415 CatchNode.prototype.set$exception = function(value) { return this.exception = va
lue; }; |
| 10413 CatchNode.prototype.get$trace = function() { return this.trace; }; | 10416 CatchNode.prototype.get$trace = function() { return this.trace; }; |
| 10414 CatchNode.prototype.set$trace = function(value) { return this.trace = value; }; | 10417 CatchNode.prototype.set$trace = function(value) { return this.trace = value; }; |
| 10415 CatchNode.prototype.get$body = function() { return this.body; }; | 10418 CatchNode.prototype.get$body = function() { return this.body; }; |
| 10416 CatchNode.prototype.set$body = function(value) { return this.body = value; }; | 10419 CatchNode.prototype.set$body = function(value) { return this.body = value; }; |
| 10417 CatchNode.prototype.visit = function(visitor) { | 10420 CatchNode.prototype.visit = function(visitor) { |
| 10418 return visitor.visitCatchNode(this); | 10421 return visitor.visitCatchNode(this); |
| 10419 } | 10422 } |
| 10420 CatchNode.prototype.visit$1 = CatchNode.prototype.visit; | 10423 CatchNode.prototype.visit$1 = CatchNode.prototype.visit; |
| 10421 // ********** Code for CaseNode ************** | 10424 // ********** Code for CaseNode ************** |
| 10425 $inherits(CaseNode, Node); |
| 10422 function CaseNode(label, cases, statements, span) { | 10426 function CaseNode(label, cases, statements, span) { |
| 10423 this.label = label; | 10427 this.label = label; |
| 10424 this.cases = cases; | 10428 this.cases = cases; |
| 10425 this.statements = statements; | 10429 this.statements = statements; |
| 10426 // Initializers done | 10430 // Initializers done |
| 10427 Node.call(this, span); | 10431 Node.call(this, span); |
| 10428 } | 10432 } |
| 10429 $inherits(CaseNode, Node); | |
| 10430 CaseNode.prototype.get$label = function() { return this.label; }; | 10433 CaseNode.prototype.get$label = function() { return this.label; }; |
| 10431 CaseNode.prototype.set$label = function(value) { return this.label = value; }; | 10434 CaseNode.prototype.set$label = function(value) { return this.label = value; }; |
| 10432 CaseNode.prototype.get$cases = function() { return this.cases; }; | 10435 CaseNode.prototype.get$cases = function() { return this.cases; }; |
| 10433 CaseNode.prototype.set$cases = function(value) { return this.cases = value; }; | 10436 CaseNode.prototype.set$cases = function(value) { return this.cases = value; }; |
| 10434 CaseNode.prototype.get$statements = function() { return this.statements; }; | 10437 CaseNode.prototype.get$statements = function() { return this.statements; }; |
| 10435 CaseNode.prototype.set$statements = function(value) { return this.statements = v
alue; }; | 10438 CaseNode.prototype.set$statements = function(value) { return this.statements = v
alue; }; |
| 10436 CaseNode.prototype.visit = function(visitor) { | 10439 CaseNode.prototype.visit = function(visitor) { |
| 10437 return visitor.visitCaseNode(this); | 10440 return visitor.visitCaseNode(this); |
| 10438 } | 10441 } |
| 10439 CaseNode.prototype.visit$1 = CaseNode.prototype.visit; | 10442 CaseNode.prototype.visit$1 = CaseNode.prototype.visit; |
| 10440 // ********** Code for TypeParameter ************** | 10443 // ********** Code for TypeParameter ************** |
| 10444 $inherits(TypeParameter, Node); |
| 10441 function TypeParameter(name, extendsType, span) { | 10445 function TypeParameter(name, extendsType, span) { |
| 10442 this.name = name; | 10446 this.name = name; |
| 10443 this.extendsType = extendsType; | 10447 this.extendsType = extendsType; |
| 10444 // Initializers done | 10448 // Initializers done |
| 10445 Node.call(this, span); | 10449 Node.call(this, span); |
| 10446 } | 10450 } |
| 10447 $inherits(TypeParameter, Node); | |
| 10448 TypeParameter.prototype.get$name = function() { return this.name; }; | 10451 TypeParameter.prototype.get$name = function() { return this.name; }; |
| 10449 TypeParameter.prototype.set$name = function(value) { return this.name = value; }
; | 10452 TypeParameter.prototype.set$name = function(value) { return this.name = value; }
; |
| 10450 TypeParameter.prototype.get$extendsType = function() { return this.extendsType;
}; | 10453 TypeParameter.prototype.get$extendsType = function() { return this.extendsType;
}; |
| 10451 TypeParameter.prototype.set$extendsType = function(value) { return this.extendsT
ype = value; }; | 10454 TypeParameter.prototype.set$extendsType = function(value) { return this.extendsT
ype = value; }; |
| 10452 TypeParameter.prototype.visit = function(visitor) { | 10455 TypeParameter.prototype.visit = function(visitor) { |
| 10453 return visitor.visitTypeParameter(this); | 10456 return visitor.visitTypeParameter(this); |
| 10454 } | 10457 } |
| 10455 TypeParameter.prototype.visit$1 = TypeParameter.prototype.visit; | 10458 TypeParameter.prototype.visit$1 = TypeParameter.prototype.visit; |
| 10456 // ********** Code for Identifier ************** | 10459 // ********** Code for Identifier ************** |
| 10460 $inherits(Identifier, Node); |
| 10457 function Identifier(name, span) { | 10461 function Identifier(name, span) { |
| 10458 this.name = name; | 10462 this.name = name; |
| 10459 // Initializers done | 10463 // Initializers done |
| 10460 Node.call(this, span); | 10464 Node.call(this, span); |
| 10461 } | 10465 } |
| 10462 $inherits(Identifier, Node); | |
| 10463 Identifier.prototype.get$name = function() { return this.name; }; | 10466 Identifier.prototype.get$name = function() { return this.name; }; |
| 10464 Identifier.prototype.set$name = function(value) { return this.name = value; }; | 10467 Identifier.prototype.set$name = function(value) { return this.name = value; }; |
| 10465 Identifier.prototype.visit = function(visitor) { | 10468 Identifier.prototype.visit = function(visitor) { |
| 10466 return visitor.visitIdentifier(this); | 10469 return visitor.visitIdentifier(this); |
| 10467 } | 10470 } |
| 10468 Identifier.prototype.visit$1 = Identifier.prototype.visit; | 10471 Identifier.prototype.visit$1 = Identifier.prototype.visit; |
| 10469 // ********** Code for DeclaredIdentifier ************** | 10472 // ********** Code for DeclaredIdentifier ************** |
| 10473 $inherits(DeclaredIdentifier, Expression); |
| 10470 function DeclaredIdentifier(type, name, span) { | 10474 function DeclaredIdentifier(type, name, span) { |
| 10471 this.type = type; | 10475 this.type = type; |
| 10472 this.name = name; | 10476 this.name = name; |
| 10473 // Initializers done | 10477 // Initializers done |
| 10474 Expression.call(this, span); | 10478 Expression.call(this, span); |
| 10475 } | 10479 } |
| 10476 $inherits(DeclaredIdentifier, Expression); | |
| 10477 DeclaredIdentifier.prototype.get$type = function() { return this.type; }; | 10480 DeclaredIdentifier.prototype.get$type = function() { return this.type; }; |
| 10478 DeclaredIdentifier.prototype.set$type = function(value) { return this.type = val
ue; }; | 10481 DeclaredIdentifier.prototype.set$type = function(value) { return this.type = val
ue; }; |
| 10479 DeclaredIdentifier.prototype.get$name = function() { return this.name; }; | 10482 DeclaredIdentifier.prototype.get$name = function() { return this.name; }; |
| 10480 DeclaredIdentifier.prototype.set$name = function(value) { return this.name = val
ue; }; | 10483 DeclaredIdentifier.prototype.set$name = function(value) { return this.name = val
ue; }; |
| 10481 DeclaredIdentifier.prototype.visit = function(visitor) { | 10484 DeclaredIdentifier.prototype.visit = function(visitor) { |
| 10482 return visitor.visitDeclaredIdentifier(this); | 10485 return visitor.visitDeclaredIdentifier(this); |
| 10483 } | 10486 } |
| 10484 DeclaredIdentifier.prototype.visit$1 = DeclaredIdentifier.prototype.visit; | 10487 DeclaredIdentifier.prototype.visit$1 = DeclaredIdentifier.prototype.visit; |
| 10485 // ********** Code for Type ************** | 10488 // ********** Code for Type ************** |
| 10489 $inherits(Type, Element); |
| 10486 function Type(name) { | 10490 function Type(name) { |
| 10487 this.isTested = false | 10491 this.isTested = false |
| 10488 this.isChecked = false | 10492 this.isChecked = false |
| 10493 this.isWritten = false |
| 10489 this._resolvedMembers = new HashMapImplementation(); | 10494 this._resolvedMembers = new HashMapImplementation(); |
| 10490 this.varStubs = new HashMapImplementation(); | 10495 this.varStubs = new HashMapImplementation(); |
| 10491 // Initializers done | 10496 // Initializers done |
| 10492 Element.call(this, name, null); | 10497 Element.call(this, name, null); |
| 10493 } | 10498 } |
| 10494 $inherits(Type, Element); | |
| 10495 Type.prototype.get$isTested = function() { return this.isTested; }; | 10499 Type.prototype.get$isTested = function() { return this.isTested; }; |
| 10496 Type.prototype.set$isTested = function(value) { return this.isTested = value; }; | 10500 Type.prototype.set$isTested = function(value) { return this.isTested = value; }; |
| 10497 Type.prototype.get$typeCheckCode = function() { return this.typeCheckCode; }; | 10501 Type.prototype.get$typeCheckCode = function() { return this.typeCheckCode; }; |
| 10498 Type.prototype.set$typeCheckCode = function(value) { return this.typeCheckCode =
value; }; | 10502 Type.prototype.set$typeCheckCode = function(value) { return this.typeCheckCode =
value; }; |
| 10499 Type.prototype.get$varStubs = function() { return this.varStubs; }; | 10503 Type.prototype.get$varStubs = function() { return this.varStubs; }; |
| 10500 Type.prototype.set$varStubs = function(value) { return this.varStubs = value; }; | 10504 Type.prototype.set$varStubs = function(value) { return this.varStubs = value; }; |
| 10501 Type.prototype.markUsed = function() { | 10505 Type.prototype.markUsed = function() { |
| 10502 | 10506 |
| 10503 } | 10507 } |
| 10504 Type.prototype.get$typeMember = function() { | 10508 Type.prototype.get$typeMember = function() { |
| (...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10817 Type.prototype.ensureSubtypeOf$3 = Type.prototype.ensureSubtypeOf; | 10821 Type.prototype.ensureSubtypeOf$3 = Type.prototype.ensureSubtypeOf; |
| 10818 Type.prototype.getConstructor$1 = Type.prototype.getConstructor; | 10822 Type.prototype.getConstructor$1 = Type.prototype.getConstructor; |
| 10819 Type.prototype.getFactory$2 = Type.prototype.getFactory; | 10823 Type.prototype.getFactory$2 = Type.prototype.getFactory; |
| 10820 Type.prototype.getMember$1 = Type.prototype.getMember; | 10824 Type.prototype.getMember$1 = Type.prototype.getMember; |
| 10821 Type.prototype.getOrMakeConcreteType$1 = Type.prototype.getOrMakeConcreteType; | 10825 Type.prototype.getOrMakeConcreteType$1 = Type.prototype.getOrMakeConcreteType; |
| 10822 Type.prototype.isAssignable$1 = Type.prototype.isAssignable; | 10826 Type.prototype.isAssignable$1 = Type.prototype.isAssignable; |
| 10823 Type.prototype.isSubtypeOf$1 = Type.prototype.isSubtypeOf; | 10827 Type.prototype.isSubtypeOf$1 = Type.prototype.isSubtypeOf; |
| 10824 Type.prototype.markUsed$0 = Type.prototype.markUsed; | 10828 Type.prototype.markUsed$0 = Type.prototype.markUsed; |
| 10825 Type.prototype.resolveTypeParams$1 = Type.prototype.resolveTypeParams; | 10829 Type.prototype.resolveTypeParams$1 = Type.prototype.resolveTypeParams; |
| 10826 // ********** Code for ParameterType ************** | 10830 // ********** Code for ParameterType ************** |
| 10831 $inherits(ParameterType, Type); |
| 10827 function ParameterType(name, typeParameter) { | 10832 function ParameterType(name, typeParameter) { |
| 10828 this.typeParameter = typeParameter; | 10833 this.typeParameter = typeParameter; |
| 10829 // Initializers done | 10834 // Initializers done |
| 10830 Type.call(this, name); | 10835 Type.call(this, name); |
| 10831 } | 10836 } |
| 10832 $inherits(ParameterType, Type); | |
| 10833 ParameterType.prototype.get$typeParameter = function() { return this.typeParamet
er; }; | 10837 ParameterType.prototype.get$typeParameter = function() { return this.typeParamet
er; }; |
| 10834 ParameterType.prototype.set$typeParameter = function(value) { return this.typePa
rameter = value; }; | 10838 ParameterType.prototype.set$typeParameter = function(value) { return this.typePa
rameter = value; }; |
| 10835 ParameterType.prototype.get$extendsType = function() { return this.extendsType;
}; | 10839 ParameterType.prototype.get$extendsType = function() { return this.extendsType;
}; |
| 10836 ParameterType.prototype.set$extendsType = function(value) { return this.extendsT
ype = value; }; | 10840 ParameterType.prototype.set$extendsType = function(value) { return this.extendsT
ype = value; }; |
| 10837 ParameterType.prototype.get$isClass = function() { | 10841 ParameterType.prototype.get$isClass = function() { |
| 10838 return false; | 10842 return false; |
| 10839 } | 10843 } |
| 10840 ParameterType.prototype.get$library = function() { | 10844 ParameterType.prototype.get$library = function() { |
| 10841 return null; | 10845 return null; |
| 10842 } | 10846 } |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10878 this.extendsType = $globals.world.objectType; | 10882 this.extendsType = $globals.world.objectType; |
| 10879 } | 10883 } |
| 10880 } | 10884 } |
| 10881 ParameterType.prototype.addDirectSubtype$1 = ParameterType.prototype.addDirectSu
btype; | 10885 ParameterType.prototype.addDirectSubtype$1 = ParameterType.prototype.addDirectSu
btype; |
| 10882 ParameterType.prototype.getConstructor$1 = ParameterType.prototype.getConstructo
r; | 10886 ParameterType.prototype.getConstructor$1 = ParameterType.prototype.getConstructo
r; |
| 10883 ParameterType.prototype.getOrMakeConcreteType$1 = ParameterType.prototype.getOrM
akeConcreteType; | 10887 ParameterType.prototype.getOrMakeConcreteType$1 = ParameterType.prototype.getOrM
akeConcreteType; |
| 10884 ParameterType.prototype.isSubtypeOf$1 = ParameterType.prototype.isSubtypeOf; | 10888 ParameterType.prototype.isSubtypeOf$1 = ParameterType.prototype.isSubtypeOf; |
| 10885 ParameterType.prototype.resolve$0 = ParameterType.prototype.resolve; | 10889 ParameterType.prototype.resolve$0 = ParameterType.prototype.resolve; |
| 10886 ParameterType.prototype.resolveTypeParams$1 = ParameterType.prototype.resolveTyp
eParams; | 10890 ParameterType.prototype.resolveTypeParams$1 = ParameterType.prototype.resolveTyp
eParams; |
| 10887 // ********** Code for NonNullableType ************** | 10891 // ********** Code for NonNullableType ************** |
| 10892 $inherits(NonNullableType, Type); |
| 10888 function NonNullableType(type) { | 10893 function NonNullableType(type) { |
| 10889 this.type = type; | 10894 this.type = type; |
| 10890 // Initializers done | 10895 // Initializers done |
| 10891 Type.call(this, type.name); | 10896 Type.call(this, type.name); |
| 10892 } | 10897 } |
| 10893 $inherits(NonNullableType, Type); | |
| 10894 NonNullableType.prototype.get$type = function() { return this.type; }; | 10898 NonNullableType.prototype.get$type = function() { return this.type; }; |
| 10895 NonNullableType.prototype.get$isNullable = function() { | 10899 NonNullableType.prototype.get$isNullable = function() { |
| 10896 return false; | 10900 return false; |
| 10897 } | 10901 } |
| 10898 NonNullableType.prototype.get$isBool = function() { | 10902 NonNullableType.prototype.get$isBool = function() { |
| 10899 return this.type.get$isBool(); | 10903 return this.type.get$isBool(); |
| 10900 } | 10904 } |
| 10901 NonNullableType.prototype.get$isUsed = function() { | 10905 NonNullableType.prototype.get$isUsed = function() { |
| 10902 return false; | 10906 return false; |
| 10903 } | 10907 } |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10990 } | 10994 } |
| 10991 NonNullableType.prototype.addDirectSubtype$1 = NonNullableType.prototype.addDire
ctSubtype; | 10995 NonNullableType.prototype.addDirectSubtype$1 = NonNullableType.prototype.addDire
ctSubtype; |
| 10992 NonNullableType.prototype.getConstructor$1 = NonNullableType.prototype.getConstr
uctor; | 10996 NonNullableType.prototype.getConstructor$1 = NonNullableType.prototype.getConstr
uctor; |
| 10993 NonNullableType.prototype.getFactory$2 = NonNullableType.prototype.getFactory; | 10997 NonNullableType.prototype.getFactory$2 = NonNullableType.prototype.getFactory; |
| 10994 NonNullableType.prototype.getMember$1 = NonNullableType.prototype.getMember; | 10998 NonNullableType.prototype.getMember$1 = NonNullableType.prototype.getMember; |
| 10995 NonNullableType.prototype.getOrMakeConcreteType$1 = NonNullableType.prototype.ge
tOrMakeConcreteType; | 10999 NonNullableType.prototype.getOrMakeConcreteType$1 = NonNullableType.prototype.ge
tOrMakeConcreteType; |
| 10996 NonNullableType.prototype.isSubtypeOf$1 = NonNullableType.prototype.isSubtypeOf; | 11000 NonNullableType.prototype.isSubtypeOf$1 = NonNullableType.prototype.isSubtypeOf; |
| 10997 NonNullableType.prototype.markUsed$0 = NonNullableType.prototype.markUsed; | 11001 NonNullableType.prototype.markUsed$0 = NonNullableType.prototype.markUsed; |
| 10998 NonNullableType.prototype.resolveTypeParams$1 = NonNullableType.prototype.resolv
eTypeParams; | 11002 NonNullableType.prototype.resolveTypeParams$1 = NonNullableType.prototype.resolv
eTypeParams; |
| 10999 // ********** Code for ConcreteType ************** | 11003 // ********** Code for ConcreteType ************** |
| 11004 $inherits(ConcreteType, Type); |
| 11000 function ConcreteType(name, genericType, typeArguments, typeArgsInOrder) { | 11005 function ConcreteType(name, genericType, typeArguments, typeArgsInOrder) { |
| 11001 this.isUsed = false | 11006 this.isUsed = false |
| 11002 this.genericType = genericType; | 11007 this.genericType = genericType; |
| 11003 this.typeArguments = typeArguments; | 11008 this.typeArguments = typeArguments; |
| 11004 this.typeArgsInOrder = typeArgsInOrder; | 11009 this.typeArgsInOrder = typeArgsInOrder; |
| 11005 this.constructors = new HashMapImplementation(); | 11010 this.constructors = new HashMapImplementation(); |
| 11006 this.members = new HashMapImplementation(); | 11011 this.members = new HashMapImplementation(); |
| 11007 this.factories = new FactoryMap(); | 11012 this.factories = new FactoryMap(); |
| 11008 // Initializers done | 11013 // Initializers done |
| 11009 Type.call(this, name); | 11014 Type.call(this, name); |
| 11010 } | 11015 } |
| 11011 $inherits(ConcreteType, Type); | |
| 11012 ConcreteType.prototype.get$genericType = function() { return this.genericType; }
; | 11016 ConcreteType.prototype.get$genericType = function() { return this.genericType; }
; |
| 11013 ConcreteType.prototype.get$_parent = function() { return this._parent; }; | 11017 ConcreteType.prototype.get$_parent = function() { return this._parent; }; |
| 11014 ConcreteType.prototype.set$_parent = function(value) { return this._parent = val
ue; }; | 11018 ConcreteType.prototype.set$_parent = function(value) { return this._parent = val
ue; }; |
| 11015 ConcreteType.prototype.get$typeArgsInOrder = function() { return this.typeArgsIn
Order; }; | 11019 ConcreteType.prototype.get$typeArgsInOrder = function() { return this.typeArgsIn
Order; }; |
| 11016 ConcreteType.prototype.set$typeArgsInOrder = function(value) { return this.typeA
rgsInOrder = value; }; | 11020 ConcreteType.prototype.set$typeArgsInOrder = function(value) { return this.typeA
rgsInOrder = value; }; |
| 11017 ConcreteType.prototype.get$isList = function() { | 11021 ConcreteType.prototype.get$isList = function() { |
| 11018 return this.genericType.get$isList(); | 11022 return this.genericType.get$isList(); |
| 11019 } | 11023 } |
| 11020 ConcreteType.prototype.get$isClass = function() { | 11024 ConcreteType.prototype.get$isClass = function() { |
| 11021 return this.genericType.isClass; | 11025 return this.genericType.isClass; |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11157 this.genericType.addDirectSubtype(type); | 11161 this.genericType.addDirectSubtype(type); |
| 11158 } | 11162 } |
| 11159 ConcreteType.prototype.addDirectSubtype$1 = ConcreteType.prototype.addDirectSubt
ype; | 11163 ConcreteType.prototype.addDirectSubtype$1 = ConcreteType.prototype.addDirectSubt
ype; |
| 11160 ConcreteType.prototype.getConstructor$1 = ConcreteType.prototype.getConstructor; | 11164 ConcreteType.prototype.getConstructor$1 = ConcreteType.prototype.getConstructor; |
| 11161 ConcreteType.prototype.getFactory$2 = ConcreteType.prototype.getFactory; | 11165 ConcreteType.prototype.getFactory$2 = ConcreteType.prototype.getFactory; |
| 11162 ConcreteType.prototype.getMember$1 = ConcreteType.prototype.getMember; | 11166 ConcreteType.prototype.getMember$1 = ConcreteType.prototype.getMember; |
| 11163 ConcreteType.prototype.getOrMakeConcreteType$1 = ConcreteType.prototype.getOrMak
eConcreteType; | 11167 ConcreteType.prototype.getOrMakeConcreteType$1 = ConcreteType.prototype.getOrMak
eConcreteType; |
| 11164 ConcreteType.prototype.markUsed$0 = ConcreteType.prototype.markUsed; | 11168 ConcreteType.prototype.markUsed$0 = ConcreteType.prototype.markUsed; |
| 11165 ConcreteType.prototype.resolveTypeParams$1 = ConcreteType.prototype.resolveTypeP
arams; | 11169 ConcreteType.prototype.resolveTypeParams$1 = ConcreteType.prototype.resolveTypeP
arams; |
| 11166 // ********** Code for DefinedType ************** | 11170 // ********** Code for DefinedType ************** |
| 11171 $inherits(DefinedType, Type); |
| 11167 function DefinedType(name, library, definition, isClass) { | 11172 function DefinedType(name, library, definition, isClass) { |
| 11168 this.isUsed = false | 11173 this.isUsed = false |
| 11169 this.isNative = false | 11174 this.isNative = false |
| 11170 this.library = library; | 11175 this.library = library; |
| 11171 this.isClass = isClass; | 11176 this.isClass = isClass; |
| 11172 this.directSubtypes = new HashSetImplementation(); | 11177 this.directSubtypes = new HashSetImplementation(); |
| 11173 this.constructors = new HashMapImplementation(); | 11178 this.constructors = new HashMapImplementation(); |
| 11174 this.members = new HashMapImplementation(); | 11179 this.members = new HashMapImplementation(); |
| 11175 this.factories = new FactoryMap(); | 11180 this.factories = new FactoryMap(); |
| 11176 // Initializers done | 11181 // Initializers done |
| 11177 Type.call(this, name); | 11182 Type.call(this, name); |
| 11178 this.setDefinition(definition); | 11183 this.setDefinition(definition); |
| 11179 } | 11184 } |
| 11180 $inherits(DefinedType, Type); | |
| 11181 DefinedType.prototype.get$definition = function() { return this.definition; }; | 11185 DefinedType.prototype.get$definition = function() { return this.definition; }; |
| 11182 DefinedType.prototype.set$definition = function(value) { return this.definition
= value; }; | 11186 DefinedType.prototype.set$definition = function(value) { return this.definition
= value; }; |
| 11183 DefinedType.prototype.get$library = function() { return this.library; }; | 11187 DefinedType.prototype.get$library = function() { return this.library; }; |
| 11184 DefinedType.prototype.get$isClass = function() { return this.isClass; }; | 11188 DefinedType.prototype.get$isClass = function() { return this.isClass; }; |
| 11185 DefinedType.prototype.get$_parent = function() { return this._parent; }; | 11189 DefinedType.prototype.get$_parent = function() { return this._parent; }; |
| 11186 DefinedType.prototype.set$_parent = function(value) { return this._parent = valu
e; }; | 11190 DefinedType.prototype.set$_parent = function(value) { return this._parent = valu
e; }; |
| 11187 DefinedType.prototype.get$parent = function() { | 11191 DefinedType.prototype.get$parent = function() { |
| 11188 return this._parent; | 11192 return this._parent; |
| 11189 } | 11193 } |
| 11190 DefinedType.prototype.set$parent = function(p) { | 11194 DefinedType.prototype.set$parent = function(p) { |
| (...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 11674 }; | 11678 }; |
| 11675 FixedCollection.prototype.forEach$1 = function($0) { | 11679 FixedCollection.prototype.forEach$1 = function($0) { |
| 11676 return this.forEach(to$call$1($0)); | 11680 return this.forEach(to$call$1($0)); |
| 11677 }; | 11681 }; |
| 11678 FixedCollection.prototype.isEmpty$0 = FixedCollection.prototype.isEmpty; | 11682 FixedCollection.prototype.isEmpty$0 = FixedCollection.prototype.isEmpty; |
| 11679 FixedCollection.prototype.iterator$0 = FixedCollection.prototype.iterator; | 11683 FixedCollection.prototype.iterator$0 = FixedCollection.prototype.iterator; |
| 11680 FixedCollection.prototype.some$1 = function($0) { | 11684 FixedCollection.prototype.some$1 = function($0) { |
| 11681 return this.some(to$call$1($0)); | 11685 return this.some(to$call$1($0)); |
| 11682 }; | 11686 }; |
| 11683 // ********** Code for FixedCollection_Type ************** | 11687 // ********** Code for FixedCollection_Type ************** |
| 11688 $inherits(FixedCollection_Type, FixedCollection); |
| 11684 function FixedCollection_Type(value, length) { | 11689 function FixedCollection_Type(value, length) { |
| 11685 this.value = value; | 11690 this.value = value; |
| 11686 this.length = length; | 11691 this.length = length; |
| 11687 // Initializers done | 11692 // Initializers done |
| 11688 } | 11693 } |
| 11689 $inherits(FixedCollection_Type, FixedCollection); | |
| 11690 // ********** Code for FixedIterator ************** | 11694 // ********** Code for FixedIterator ************** |
| 11691 function FixedIterator(value, length) { | 11695 function FixedIterator(value, length) { |
| 11692 this._index = 0 | 11696 this._index = 0 |
| 11693 this.value = value; | 11697 this.value = value; |
| 11694 this.length = length; | 11698 this.length = length; |
| 11695 // Initializers done | 11699 // Initializers done |
| 11696 } | 11700 } |
| 11697 FixedIterator.prototype.get$value = function() { return this.value; }; | 11701 FixedIterator.prototype.get$value = function() { return this.value; }; |
| 11698 FixedIterator.prototype.hasNext = function() { | 11702 FixedIterator.prototype.hasNext = function() { |
| 11699 return this._index < this.length; | 11703 return this._index < this.length; |
| 11700 } | 11704 } |
| 11701 FixedIterator.prototype.next = function() { | 11705 FixedIterator.prototype.next = function() { |
| 11702 this._index++; | 11706 this._index++; |
| 11703 return this.value; | 11707 return this.value; |
| 11704 } | 11708 } |
| 11705 FixedIterator.prototype.hasNext$0 = FixedIterator.prototype.hasNext; | 11709 FixedIterator.prototype.hasNext$0 = FixedIterator.prototype.hasNext; |
| 11706 FixedIterator.prototype.next$0 = FixedIterator.prototype.next; | 11710 FixedIterator.prototype.next$0 = FixedIterator.prototype.next; |
| 11707 // ********** Code for FixedIterator_E ************** | 11711 // ********** Code for FixedIterator_E ************** |
| 11712 $inherits(FixedIterator_E, FixedIterator); |
| 11708 function FixedIterator_E(value, length) { | 11713 function FixedIterator_E(value, length) { |
| 11709 this._index = 0 | 11714 this._index = 0 |
| 11710 this.value = value; | 11715 this.value = value; |
| 11711 this.length = length; | 11716 this.length = length; |
| 11712 // Initializers done | 11717 // Initializers done |
| 11713 } | 11718 } |
| 11714 $inherits(FixedIterator_E, FixedIterator); | |
| 11715 // ********** Code for Value ************** | 11719 // ********** Code for Value ************** |
| 11716 function Value(_type, code, span, needsTemp) { | 11720 function Value(_type, code, span, needsTemp) { |
| 11717 this.isSuper = false | 11721 this.isSuper = false |
| 11718 this.isType = false | 11722 this.isType = false |
| 11719 this.isInitializerTarget = false | 11723 this.isInitializerTarget = false |
| 11720 this.isFinal = false | 11724 this.isFinal = false |
| 11721 this._type = _type; | 11725 this._type = _type; |
| 11722 this.code = code; | 11726 this.code = code; |
| 11723 this.span = span; | 11727 this.span = span; |
| 11724 this.needsTemp = needsTemp; | 11728 this.needsTemp = needsTemp; |
| (...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12075 Value.prototype.invoke$4 = function($0, $1, $2, $3) { | 12079 Value.prototype.invoke$4 = function($0, $1, $2, $3) { |
| 12076 return this.invoke($0, $1, $2, $3, false); | 12080 return this.invoke($0, $1, $2, $3, false); |
| 12077 }; | 12081 }; |
| 12078 Value.prototype.invoke$4$isDynamic = Value.prototype.invoke; | 12082 Value.prototype.invoke$4$isDynamic = Value.prototype.invoke; |
| 12079 Value.prototype.invoke$5 = Value.prototype.invoke; | 12083 Value.prototype.invoke$5 = Value.prototype.invoke; |
| 12080 Value.prototype.needsConversion$1 = Value.prototype.needsConversion; | 12084 Value.prototype.needsConversion$1 = Value.prototype.needsConversion; |
| 12081 Value.prototype.set_$4 = function($0, $1, $2, $3) { | 12085 Value.prototype.set_$4 = function($0, $1, $2, $3) { |
| 12082 return this.set_($0, $1, $2, $3, false); | 12086 return this.set_($0, $1, $2, $3, false); |
| 12083 }; | 12087 }; |
| 12084 // ********** Code for EvaluatedValue ************** | 12088 // ********** Code for EvaluatedValue ************** |
| 12089 $inherits(EvaluatedValue, Value); |
| 12085 function EvaluatedValue() {} | 12090 function EvaluatedValue() {} |
| 12086 EvaluatedValue._internal$ctor = function(type, actualValue, canonicalCode, span,
code) { | 12091 EvaluatedValue._internal$ctor = function(type, actualValue, canonicalCode, span,
code) { |
| 12087 this.actualValue = actualValue; | 12092 this.actualValue = actualValue; |
| 12088 this.canonicalCode = canonicalCode; | 12093 this.canonicalCode = canonicalCode; |
| 12089 // Initializers done | 12094 // Initializers done |
| 12090 Value.call(this, type, code, span, false); | 12095 Value.call(this, type, code, span, false); |
| 12091 } | 12096 } |
| 12092 EvaluatedValue._internal$ctor.prototype = EvaluatedValue.prototype; | 12097 EvaluatedValue._internal$ctor.prototype = EvaluatedValue.prototype; |
| 12093 $inherits(EvaluatedValue, Value); | |
| 12094 EvaluatedValue.EvaluatedValue$factory = function(type, actualValue, canonicalCod
e, span) { | 12098 EvaluatedValue.EvaluatedValue$factory = function(type, actualValue, canonicalCod
e, span) { |
| 12095 return new EvaluatedValue._internal$ctor(type, actualValue, canonicalCode, spa
n, EvaluatedValue.codeWithComments(canonicalCode, span)); | 12099 return new EvaluatedValue._internal$ctor(type, actualValue, canonicalCode, spa
n, EvaluatedValue.codeWithComments(canonicalCode, span)); |
| 12096 } | 12100 } |
| 12097 EvaluatedValue.prototype.get$actualValue = function() { return this.actualValue;
}; | 12101 EvaluatedValue.prototype.get$actualValue = function() { return this.actualValue;
}; |
| 12098 EvaluatedValue.prototype.set$actualValue = function(value) { return this.actualV
alue = value; }; | 12102 EvaluatedValue.prototype.set$actualValue = function(value) { return this.actualV
alue = value; }; |
| 12099 EvaluatedValue.prototype.get$isConst = function() { | 12103 EvaluatedValue.prototype.get$isConst = function() { |
| 12100 return true; | 12104 return true; |
| 12101 } | 12105 } |
| 12102 EvaluatedValue.prototype.get$canonicalCode = function() { return this.canonicalC
ode; }; | 12106 EvaluatedValue.prototype.get$canonicalCode = function() { return this.canonicalC
ode; }; |
| 12103 EvaluatedValue.prototype.set$canonicalCode = function(value) { return this.canon
icalCode = value; }; | 12107 EvaluatedValue.prototype.set$canonicalCode = function(value) { return this.canon
icalCode = value; }; |
| 12104 EvaluatedValue.codeWithComments = function(canonicalCode, span) { | 12108 EvaluatedValue.codeWithComments = function(canonicalCode, span) { |
| 12105 return (span != null && span.get$text() != canonicalCode) ? ('' + canonicalCod
e + '/*' + _escapeForComment(span.get$text()) + '*/') : canonicalCode; | 12109 return (span != null && span.get$text() != canonicalCode) ? ('' + canonicalCod
e + '/*' + _escapeForComment(span.get$text()) + '*/') : canonicalCode; |
| 12106 } | 12110 } |
| 12107 // ********** Code for ConstListValue ************** | 12111 // ********** Code for ConstListValue ************** |
| 12112 $inherits(ConstListValue, EvaluatedValue); |
| 12108 function ConstListValue() {} | 12113 function ConstListValue() {} |
| 12109 ConstListValue._internal$ctor = function(type, values, actualValue, canonicalCod
e, span, code) { | 12114 ConstListValue._internal$ctor = function(type, values, actualValue, canonicalCod
e, span, code) { |
| 12110 this.values = values; | 12115 this.values = values; |
| 12111 // Initializers done | 12116 // Initializers done |
| 12112 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); | 12117 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); |
| 12113 } | 12118 } |
| 12114 ConstListValue._internal$ctor.prototype = ConstListValue.prototype; | 12119 ConstListValue._internal$ctor.prototype = ConstListValue.prototype; |
| 12115 $inherits(ConstListValue, EvaluatedValue); | |
| 12116 ConstListValue.ConstListValue$factory = function(type, values, actualValue, cano
nicalCode, span) { | 12120 ConstListValue.ConstListValue$factory = function(type, values, actualValue, cano
nicalCode, span) { |
| 12117 return new ConstListValue._internal$ctor(type, values, actualValue, canonicalC
ode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); | 12121 return new ConstListValue._internal$ctor(type, values, actualValue, canonicalC
ode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); |
| 12118 } | 12122 } |
| 12119 ConstListValue.prototype.get$values = function() { return this.values; }; | 12123 ConstListValue.prototype.get$values = function() { return this.values; }; |
| 12120 ConstListValue.prototype.set$values = function(value) { return this.values = val
ue; }; | 12124 ConstListValue.prototype.set$values = function(value) { return this.values = val
ue; }; |
| 12121 // ********** Code for ConstMapValue ************** | 12125 // ********** Code for ConstMapValue ************** |
| 12126 $inherits(ConstMapValue, EvaluatedValue); |
| 12122 function ConstMapValue() {} | 12127 function ConstMapValue() {} |
| 12123 ConstMapValue._internal$ctor = function(type, values, actualValue, canonicalCode
, span, code) { | 12128 ConstMapValue._internal$ctor = function(type, values, actualValue, canonicalCode
, span, code) { |
| 12124 this.values = values; | 12129 this.values = values; |
| 12125 // Initializers done | 12130 // Initializers done |
| 12126 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); | 12131 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); |
| 12127 } | 12132 } |
| 12128 ConstMapValue._internal$ctor.prototype = ConstMapValue.prototype; | 12133 ConstMapValue._internal$ctor.prototype = ConstMapValue.prototype; |
| 12129 $inherits(ConstMapValue, EvaluatedValue); | |
| 12130 ConstMapValue.ConstMapValue$factory = function(type, keyValuePairs, actualValue,
canonicalCode, span) { | 12134 ConstMapValue.ConstMapValue$factory = function(type, keyValuePairs, actualValue,
canonicalCode, span) { |
| 12131 var values = new HashMapImplementation(); | 12135 var values = new HashMapImplementation(); |
| 12132 for (var i = 0; | 12136 for (var i = 0; |
| 12133 i < keyValuePairs.length; i += 2) { | 12137 i < keyValuePairs.length; i += 2) { |
| 12134 values.$setindex(keyValuePairs.$index(i).get$actualValue(), keyValuePairs.$i
ndex(i + 1)); | 12138 values.$setindex(keyValuePairs.$index(i).get$actualValue(), keyValuePairs.$i
ndex(i + 1)); |
| 12135 } | 12139 } |
| 12136 return new ConstMapValue._internal$ctor(type, values, actualValue, canonicalCo
de, span, EvaluatedValue.codeWithComments(canonicalCode, span)); | 12140 return new ConstMapValue._internal$ctor(type, values, actualValue, canonicalCo
de, span, EvaluatedValue.codeWithComments(canonicalCode, span)); |
| 12137 } | 12141 } |
| 12138 ConstMapValue.prototype.get$values = function() { return this.values; }; | 12142 ConstMapValue.prototype.get$values = function() { return this.values; }; |
| 12139 ConstMapValue.prototype.set$values = function(value) { return this.values = valu
e; }; | 12143 ConstMapValue.prototype.set$values = function(value) { return this.values = valu
e; }; |
| 12140 // ********** Code for ConstObjectValue ************** | 12144 // ********** Code for ConstObjectValue ************** |
| 12145 $inherits(ConstObjectValue, EvaluatedValue); |
| 12141 function ConstObjectValue() {} | 12146 function ConstObjectValue() {} |
| 12142 ConstObjectValue._internal$ctor = function(type, fields, actualValue, canonicalC
ode, span, code) { | 12147 ConstObjectValue._internal$ctor = function(type, fields, actualValue, canonicalC
ode, span, code) { |
| 12143 this.fields = fields; | 12148 this.fields = fields; |
| 12144 // Initializers done | 12149 // Initializers done |
| 12145 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); | 12150 EvaluatedValue._internal$ctor.call(this, type, actualValue, canonicalCode, spa
n, code); |
| 12146 } | 12151 } |
| 12147 ConstObjectValue._internal$ctor.prototype = ConstObjectValue.prototype; | 12152 ConstObjectValue._internal$ctor.prototype = ConstObjectValue.prototype; |
| 12148 $inherits(ConstObjectValue, EvaluatedValue); | |
| 12149 ConstObjectValue.ConstObjectValue$factory = function(type, fields, canonicalCode
, span) { | 12153 ConstObjectValue.ConstObjectValue$factory = function(type, fields, canonicalCode
, span) { |
| 12150 var fieldValues = []; | 12154 var fieldValues = []; |
| 12151 var $$list = fields.getKeys(); | 12155 var $$list = fields.getKeys(); |
| 12152 for (var $$i = fields.getKeys().iterator$0(); $$i.hasNext$0(); ) { | 12156 for (var $$i = fields.getKeys().iterator$0(); $$i.hasNext$0(); ) { |
| 12153 var f = $$i.next$0(); | 12157 var f = $$i.next$0(); |
| 12154 fieldValues.add(('' + f + ' = ' + fields.$index(f).get$actualValue())); | 12158 fieldValues.add(('' + f + ' = ' + fields.$index(f).get$actualValue())); |
| 12155 } | 12159 } |
| 12156 fieldValues.sort((function (a, b) { | 12160 fieldValues.sort((function (a, b) { |
| 12157 return a.compareTo$1(b); | 12161 return a.compareTo$1(b); |
| 12158 }) | 12162 }) |
| 12159 ); | 12163 ); |
| 12160 var actualValue = ('const ' + type.get$jsname() + ' [') + Strings.join(fieldVa
lues, ',') + ']'; | 12164 var actualValue = ('const ' + type.get$jsname() + ' [') + Strings.join(fieldVa
lues, ',') + ']'; |
| 12161 return new ConstObjectValue._internal$ctor(type, fields, actualValue, canonica
lCode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); | 12165 return new ConstObjectValue._internal$ctor(type, fields, actualValue, canonica
lCode, span, EvaluatedValue.codeWithComments(canonicalCode, span)); |
| 12162 } | 12166 } |
| 12163 ConstObjectValue.prototype.get$fields = function() { return this.fields; }; | 12167 ConstObjectValue.prototype.get$fields = function() { return this.fields; }; |
| 12164 ConstObjectValue.prototype.set$fields = function(value) { return this.fields = v
alue; }; | 12168 ConstObjectValue.prototype.set$fields = function(value) { return this.fields = v
alue; }; |
| 12165 // ********** Code for GlobalValue ************** | 12169 // ********** Code for GlobalValue ************** |
| 12170 $inherits(GlobalValue, Value); |
| 12166 function GlobalValue(type, code, isConst, field, name, exp, canonicalCode, span,
_dependencies) { | 12171 function GlobalValue(type, code, isConst, field, name, exp, canonicalCode, span,
_dependencies) { |
| 12167 this.field = field; | 12172 this.field = field; |
| 12168 this.name = name; | 12173 this.name = name; |
| 12169 this.exp = exp; | 12174 this.exp = exp; |
| 12170 this.canonicalCode = canonicalCode; | 12175 this.canonicalCode = canonicalCode; |
| 12171 this.dependencies = []; | 12176 this.dependencies = []; |
| 12172 // Initializers done | 12177 // Initializers done |
| 12173 Value.call(this, type, code, span, !isConst); | 12178 Value.call(this, type, code, span, !isConst); |
| 12174 for (var $$i = 0;$$i < _dependencies.length; $$i++) { | 12179 for (var $$i = 0;$$i < _dependencies.length; $$i++) { |
| 12175 var dep = _dependencies.$index($$i); | 12180 var dep = _dependencies.$index($$i); |
| 12176 this.dependencies.add(dep); | 12181 this.dependencies.add(dep); |
| 12177 this.dependencies.addAll(dep.get$dependencies()); | 12182 this.dependencies.addAll(dep.get$dependencies()); |
| 12178 } | 12183 } |
| 12179 } | 12184 } |
| 12180 $inherits(GlobalValue, Value); | |
| 12181 GlobalValue.GlobalValue$fromStatic$factory = function(field, exp, dependencies)
{ | 12185 GlobalValue.GlobalValue$fromStatic$factory = function(field, exp, dependencies)
{ |
| 12182 var code = (exp.get$isConst() ? exp.get$canonicalCode() : exp.code); | 12186 var code = (exp.get$isConst() ? exp.get$canonicalCode() : exp.code); |
| 12183 var codeWithComment = ('' + code + '/*' + field.get$declaringType().get$name()
+ '.' + field.get$name() + '*/'); | 12187 var codeWithComment = ('' + code + '/*' + field.get$declaringType().get$name()
+ '.' + field.get$name() + '*/'); |
| 12184 return new GlobalValue(exp.get$type(), codeWithComment, field.get$isFinal(), f
ield, null, exp, code, exp.span, dependencies.filter$1((function (d) { | 12188 return new GlobalValue(exp.get$type(), codeWithComment, field.get$isFinal(), f
ield, null, exp, code, exp.span, dependencies.filter$1((function (d) { |
| 12185 return (d instanceof GlobalValue); | 12189 return (d instanceof GlobalValue); |
| 12186 }) | 12190 }) |
| 12187 )); | 12191 )); |
| 12188 } | 12192 } |
| 12189 GlobalValue.GlobalValue$fromConst$factory = function(uniqueId, exp, dependencies
) { | 12193 GlobalValue.GlobalValue$fromConst$factory = function(uniqueId, exp, dependencies
) { |
| 12190 var name = ("const\$" + uniqueId); | 12194 var name = ("const\$" + uniqueId); |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12234 } | 12238 } |
| 12235 else if (this.name != null) { | 12239 else if (this.name != null) { |
| 12236 return this.name.compareTo(other.name); | 12240 return this.name.compareTo(other.name); |
| 12237 } | 12241 } |
| 12238 else { | 12242 else { |
| 12239 return this.field.name.compareTo(other.field.name); | 12243 return this.field.name.compareTo(other.field.name); |
| 12240 } | 12244 } |
| 12241 } | 12245 } |
| 12242 GlobalValue.prototype.compareTo$1 = GlobalValue.prototype.compareTo; | 12246 GlobalValue.prototype.compareTo$1 = GlobalValue.prototype.compareTo; |
| 12243 // ********** Code for BareValue ************** | 12247 // ********** Code for BareValue ************** |
| 12248 $inherits(BareValue, Value); |
| 12244 function BareValue(home, outermost, span) { | 12249 function BareValue(home, outermost, span) { |
| 12245 this.home = home; | 12250 this.home = home; |
| 12246 // Initializers done | 12251 // Initializers done |
| 12247 Value.call(this, outermost.method.declaringType, null, span, false); | 12252 Value.call(this, outermost.method.declaringType, null, span, false); |
| 12248 this.isType = outermost.get$isStatic(); | 12253 this.isType = outermost.get$isStatic(); |
| 12249 } | 12254 } |
| 12250 $inherits(BareValue, Value); | |
| 12251 BareValue.prototype.get$type = function() { | 12255 BareValue.prototype.get$type = function() { |
| 12252 return this._type; | 12256 return this._type; |
| 12253 } | 12257 } |
| 12254 BareValue.prototype._ensureCode = function() { | 12258 BareValue.prototype._ensureCode = function() { |
| 12255 if (this.code != null) return; | 12259 if (this.code != null) return; |
| 12256 if (this.isType) { | 12260 if (this.isType) { |
| 12257 this.code = this.get$type().get$jsname(); | 12261 this.code = this.get$type().get$jsname(); |
| 12258 } | 12262 } |
| 12259 else { | 12263 else { |
| 12260 this.code = this.home._makeThisCode(); | 12264 this.code = this.home._makeThisCode(); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 12271 } | 12275 } |
| 12272 member = this.home.get$library().lookup(name, this.span); | 12276 member = this.home.get$library().lookup(name, this.span); |
| 12273 if ($ne(member, null)) { | 12277 if ($ne(member, null)) { |
| 12274 return member; | 12278 return member; |
| 12275 } | 12279 } |
| 12276 this._ensureCode(); | 12280 this._ensureCode(); |
| 12277 return null; | 12281 return null; |
| 12278 } | 12282 } |
| 12279 // ********** Code for CompilerException ************** | 12283 // ********** Code for CompilerException ************** |
| 12280 function CompilerException(_message, _location) { | 12284 function CompilerException(_message, _location) { |
| 12281 this._message = _message; | 12285 this._lang_message = _message; |
| 12282 this._location = _location; | 12286 this._location = _location; |
| 12283 // Initializers done | 12287 // Initializers done |
| 12284 } | 12288 } |
| 12285 CompilerException.prototype.toString = function() { | 12289 CompilerException.prototype.toString = function() { |
| 12286 if (this._location != null) { | 12290 if (this._location != null) { |
| 12287 return ('CompilerException: ' + this._location.toMessageString(this._message
)); | 12291 return ('CompilerException: ' + this._location.toMessageString(this._lang_me
ssage)); |
| 12288 } | 12292 } |
| 12289 else { | 12293 else { |
| 12290 return ('CompilerException: ' + this._message); | 12294 return ('CompilerException: ' + this._lang_message); |
| 12291 } | 12295 } |
| 12292 } | 12296 } |
| 12293 CompilerException.prototype.toString$0 = CompilerException.prototype.toString; | 12297 CompilerException.prototype.toString$0 = CompilerException.prototype.toString; |
| 12294 // ********** Code for World ************** | 12298 // ********** Code for World ************** |
| 12295 function World(files) { | 12299 function World(files) { |
| 12296 this.errors = 0 | 12300 this.errors = 0 |
| 12297 this.warnings = 0 | 12301 this.warnings = 0 |
| 12298 this.dartBytesRead = 0 | 12302 this.dartBytesRead = 0 |
| 12299 this.jsBytesWritten = 0 | 12303 this.jsBytesWritten = 0 |
| 12300 this.seenFatal = false | 12304 this.seenFatal = false |
| (...skipping 502 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12803 VarMember.prototype.get$name = function() { return this.name; }; | 12807 VarMember.prototype.get$name = function() { return this.name; }; |
| 12804 VarMember.prototype.get$returnType = function() { | 12808 VarMember.prototype.get$returnType = function() { |
| 12805 return $globals.world.varType; | 12809 return $globals.world.varType; |
| 12806 } | 12810 } |
| 12807 VarMember.prototype.invoke = function(context, node, target, args) { | 12811 VarMember.prototype.invoke = function(context, node, target, args) { |
| 12808 return new Value(this.get$returnType(), ('' + target.code + '.' + this.name +
'(' + args.getCode() + ')'), node.span, true); | 12812 return new Value(this.get$returnType(), ('' + target.code + '.' + this.name +
'(' + args.getCode() + ')'), node.span, true); |
| 12809 } | 12813 } |
| 12810 VarMember.prototype.generate$1 = VarMember.prototype.generate; | 12814 VarMember.prototype.generate$1 = VarMember.prototype.generate; |
| 12811 VarMember.prototype.invoke$4 = VarMember.prototype.invoke; | 12815 VarMember.prototype.invoke$4 = VarMember.prototype.invoke; |
| 12812 // ********** Code for VarFunctionStub ************** | 12816 // ********** Code for VarFunctionStub ************** |
| 12817 $inherits(VarFunctionStub, VarMember); |
| 12813 function VarFunctionStub(name, callArgs) { | 12818 function VarFunctionStub(name, callArgs) { |
| 12814 this.args = callArgs.toCallStubArgs(); | 12819 this.args = callArgs.toCallStubArgs(); |
| 12815 // Initializers done | 12820 // Initializers done |
| 12816 VarMember.call(this, name); | 12821 VarMember.call(this, name); |
| 12817 $globals.world.gen.corejs.useGenStub = true; | 12822 $globals.world.gen.corejs.useGenStub = true; |
| 12818 } | 12823 } |
| 12819 $inherits(VarFunctionStub, VarMember); | |
| 12820 VarFunctionStub.prototype.generate = function(code) { | 12824 VarFunctionStub.prototype.generate = function(code) { |
| 12821 if (this.args.get$hasNames()) { | 12825 if (this.args.get$hasNames()) { |
| 12822 this.generateNamed(code); | 12826 this.generateNamed(code); |
| 12823 } | 12827 } |
| 12824 else { | 12828 else { |
| 12825 this.generatePositional(code); | 12829 this.generatePositional(code); |
| 12826 } | 12830 } |
| 12827 } | 12831 } |
| 12828 VarFunctionStub.prototype.generatePositional = function(w) { | 12832 VarFunctionStub.prototype.generatePositional = function(w) { |
| 12829 var arity = this.args.get$length(); | 12833 var arity = this.args.get$length(); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 12841 VarFunctionStub.prototype.generateNamed = function(w) { | 12845 VarFunctionStub.prototype.generateNamed = function(w) { |
| 12842 var named = Strings.join(this.args.getNames(), '", "'); | 12846 var named = Strings.join(this.args.getNames(), '", "'); |
| 12843 var argsCode = this.args.getCode(); | 12847 var argsCode = this.args.getCode(); |
| 12844 w.enterBlock(('Function.prototype.' + this.name + ' = function(' + argsCode +
') {')); | 12848 w.enterBlock(('Function.prototype.' + this.name + ' = function(' + argsCode +
') {')); |
| 12845 w.writeln(('this.' + this.name + ' = this.\$genStub(' + this.args.get$length()
+ ', ["' + named + '"]);')); | 12849 w.writeln(('this.' + this.name + ' = this.\$genStub(' + this.args.get$length()
+ ', ["' + named + '"]);')); |
| 12846 w.writeln(('return this.' + this.name + '(' + argsCode + ');')); | 12850 w.writeln(('return this.' + this.name + '(' + argsCode + ');')); |
| 12847 w.exitBlock('}'); | 12851 w.exitBlock('}'); |
| 12848 } | 12852 } |
| 12849 VarFunctionStub.prototype.generate$1 = VarFunctionStub.prototype.generate; | 12853 VarFunctionStub.prototype.generate$1 = VarFunctionStub.prototype.generate; |
| 12850 // ********** Code for VarMethodStub ************** | 12854 // ********** Code for VarMethodStub ************** |
| 12855 $inherits(VarMethodStub, VarMember); |
| 12851 function VarMethodStub(name, member, args, body) { | 12856 function VarMethodStub(name, member, args, body) { |
| 12852 this.member = member; | 12857 this.member = member; |
| 12853 this.args = args; | 12858 this.args = args; |
| 12854 this.body = body; | 12859 this.body = body; |
| 12855 // Initializers done | 12860 // Initializers done |
| 12856 VarMember.call(this, name); | 12861 VarMember.call(this, name); |
| 12857 } | 12862 } |
| 12858 $inherits(VarMethodStub, VarMember); | |
| 12859 VarMethodStub.prototype.get$body = function() { return this.body; }; | 12863 VarMethodStub.prototype.get$body = function() { return this.body; }; |
| 12860 VarMethodStub.prototype.get$isHidden = function() { | 12864 VarMethodStub.prototype.get$isHidden = function() { |
| 12861 return this.member != null ? this.member.declaringType.get$isHiddenNativeType(
) : false; | 12865 return this.member != null ? this.member.declaringType.get$isHiddenNativeType(
) : false; |
| 12862 } | 12866 } |
| 12863 VarMethodStub.prototype.get$returnType = function() { | 12867 VarMethodStub.prototype.get$returnType = function() { |
| 12864 return this.member != null ? this.member.get$returnType() : $globals.world.var
Type; | 12868 return this.member != null ? this.member.get$returnType() : $globals.world.var
Type; |
| 12865 } | 12869 } |
| 12866 VarMethodStub.prototype.get$declaringType = function() { | 12870 VarMethodStub.prototype.get$declaringType = function() { |
| 12867 return this.member != null ? this.member.declaringType : $globals.world.object
Type; | 12871 return this.member != null ? this.member.declaringType : $globals.world.object
Type; |
| 12868 } | 12872 } |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 12909 } | 12913 } |
| 12910 } | 12914 } |
| 12911 return method.namesInOrder(args); | 12915 return method.namesInOrder(args); |
| 12912 } | 12916 } |
| 12913 else { | 12917 else { |
| 12914 return false; | 12918 return false; |
| 12915 } | 12919 } |
| 12916 } | 12920 } |
| 12917 VarMethodStub.prototype.generate$1 = VarMethodStub.prototype.generate; | 12921 VarMethodStub.prototype.generate$1 = VarMethodStub.prototype.generate; |
| 12918 // ********** Code for VarMethodSet ************** | 12922 // ********** Code for VarMethodSet ************** |
| 12923 $inherits(VarMethodSet, VarMember); |
| 12919 function VarMethodSet(baseName, name, members, callArgs, returnType) { | 12924 function VarMethodSet(baseName, name, members, callArgs, returnType) { |
| 12920 this.invoked = false | 12925 this.invoked = false |
| 12921 this.baseName = baseName; | 12926 this.baseName = baseName; |
| 12922 this.members = members; | 12927 this.members = members; |
| 12923 this.returnType = returnType; | 12928 this.returnType = returnType; |
| 12924 this.args = callArgs.toCallStubArgs(); | 12929 this.args = callArgs.toCallStubArgs(); |
| 12925 // Initializers done | 12930 // Initializers done |
| 12926 VarMember.call(this, name); | 12931 VarMember.call(this, name); |
| 12927 } | 12932 } |
| 12928 $inherits(VarMethodSet, VarMember); | |
| 12929 VarMethodSet.prototype.get$members = function() { return this.members; }; | 12933 VarMethodSet.prototype.get$members = function() { return this.members; }; |
| 12930 VarMethodSet.prototype.get$returnType = function() { return this.returnType; }; | 12934 VarMethodSet.prototype.get$returnType = function() { return this.returnType; }; |
| 12931 VarMethodSet.prototype.invoke = function(context, node, target, args) { | 12935 VarMethodSet.prototype.invoke = function(context, node, target, args) { |
| 12932 this._invokeMembers(context, node); | 12936 this._invokeMembers(context, node); |
| 12933 return VarMember.prototype.invoke.call(this, context, node, target, args); | 12937 return VarMember.prototype.invoke.call(this, context, node, target, args); |
| 12934 } | 12938 } |
| 12935 VarMethodSet.prototype._invokeMembers = function(context, node) { | 12939 VarMethodSet.prototype._invokeMembers = function(context, node) { |
| 12936 if (this.invoked) return; | 12940 if (this.invoked) return; |
| 12937 this.invoked = true; | 12941 this.invoked = true; |
| 12938 var hasObjectType = false; | 12942 var hasObjectType = false; |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 13125 $globals._MAGENTA_COLOR = '\u001b[35m'; | 13129 $globals._MAGENTA_COLOR = '\u001b[35m'; |
| 13126 $globals._NO_COLOR = '\u001b[0m'; | 13130 $globals._NO_COLOR = '\u001b[0m'; |
| 13127 $globals._RED_COLOR = '\u001b[31m'; | 13131 $globals._RED_COLOR = '\u001b[31m'; |
| 13128 } | 13132 } |
| 13129 var const$0 = new NoMoreElementsException()/*const NoMoreElementsException()*/; | 13133 var const$0 = new NoMoreElementsException()/*const NoMoreElementsException()*/; |
| 13130 var const$2 = new EmptyQueueException()/*const EmptyQueueException()*/; | 13134 var const$2 = new EmptyQueueException()/*const EmptyQueueException()*/; |
| 13131 var const$3 = new _DeletedKeySentinel()/*const _DeletedKeySentinel()*/; | 13135 var const$3 = new _DeletedKeySentinel()/*const _DeletedKeySentinel()*/; |
| 13132 var $globals = {}; | 13136 var $globals = {}; |
| 13133 $static_init(); | 13137 $static_init(); |
| 13134 main(); | 13138 main(); |
| OLD | NEW |