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) { this($0, $1, true, capture); } | 7 * function($0, $1, capture) { this($0, $1, true, capture); } |
8 * | 8 * |
9 * This stub then replaces the dynamic one on Function, with one that is | 9 * This stub then replaces the dynamic one on Function, with one that is |
10 * specialized for that particular function, taking into account its default | 10 * specialized for that particular function, taking into account its default |
(...skipping 13323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13334 $globals.world.error('static members can not hide parent members', this.get$
span(), other.get$span()); | 13334 $globals.world.error('static members can not hide parent members', this.get$
span(), other.get$span()); |
13335 return false; | 13335 return false; |
13336 } | 13336 } |
13337 else if ($notnull_bool(other.get$isStatic())) { | 13337 else if ($notnull_bool(other.get$isStatic())) { |
13338 $globals.world.error('can not override static member', this.get$span(), othe
r.get$span()); | 13338 $globals.world.error('can not override static member', this.get$span(), othe
r.get$span()); |
13339 return false; | 13339 return false; |
13340 } | 13340 } |
13341 return true; | 13341 return true; |
13342 } | 13342 } |
13343 Member.prototype.get$generatedFactoryName = function() { | 13343 Member.prototype.get$generatedFactoryName = function() { |
13344 $assert(this.get$isFactory(), "this.isFactory", "member.dart", 201, 12); | 13344 $assert(this.get$isFactory(), "this.isFactory", "member.dart", 203, 12); |
13345 var prefix = ('' + this.declaringType.get$jsname() + '.' + this.get$constructo
rName() + '\$'); | 13345 var prefix = ('' + this.declaringType.get$jsname() + '.' + this.get$constructo
rName() + '\$'); |
13346 if (this.name == '') { | 13346 if (this.name == '') { |
13347 return ('' + prefix + 'factory'); | 13347 return ('' + prefix + 'factory'); |
13348 } | 13348 } |
13349 else { | 13349 else { |
13350 return ('' + prefix + this.name + '\$factory'); | 13350 return ('' + prefix + this.name + '\$factory'); |
13351 } | 13351 } |
13352 } | 13352 } |
13353 Member.prototype.resolveType = function(node, isRequired) { | 13353 Member.prototype.resolveType = function(node, isRequired) { |
13354 var type = this.declaringType.resolveType(node, isRequired); | 13354 var type = this.declaringType.resolveType(node, isRequired); |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13414 TypeMember.prototype.get$canSet = function() { | 13414 TypeMember.prototype.get$canSet = function() { |
13415 return false; | 13415 return false; |
13416 } | 13416 } |
13417 TypeMember.prototype.resolve = function(inType) { | 13417 TypeMember.prototype.resolve = function(inType) { |
13418 | 13418 |
13419 } | 13419 } |
13420 TypeMember.prototype._get = function(context, node, target, isDynamic) { | 13420 TypeMember.prototype._get = function(context, node, target, isDynamic) { |
13421 return new Value.type$ctor(this.type, node.span); | 13421 return new Value.type$ctor(this.type, node.span); |
13422 } | 13422 } |
13423 TypeMember.prototype._set = function(context, node, target, value, isDynamic) { | 13423 TypeMember.prototype._set = function(context, node, target, value, isDynamic) { |
13424 $globals.world.error('can not set type', node.span); | 13424 $globals.world.error('cannot set type', node.span); |
13425 } | 13425 } |
13426 TypeMember.prototype.invoke = function(context, node, target, args, isDynamic) { | 13426 TypeMember.prototype.invoke = function(context, node, target, args, isDynamic) { |
13427 $globals.world.error('can not invoke type', node.span); | 13427 $globals.world.error('cannot invoke type', node.span); |
13428 } | 13428 } |
13429 TypeMember.prototype._get$3 = function($0, $1, $2) { | 13429 TypeMember.prototype._get$3 = function($0, $1, $2) { |
13430 return this._get(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), false); | 13430 return this._get(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), false); |
13431 }; | 13431 }; |
13432 TypeMember.prototype._set$4 = function($0, $1, $2, $3) { | 13432 TypeMember.prototype._set$4 = function($0, $1, $2, $3) { |
13433 return this._set(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), ($3 && $3.is$Value()), false); | 13433 return this._set(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), ($3 && $3.is$Value()), false); |
13434 }; | 13434 }; |
13435 TypeMember.prototype.canInvoke$2 = function($0, $1) { | 13435 TypeMember.prototype.canInvoke$2 = function($0, $1) { |
13436 return this.canInvoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$Arguments(
))); | 13436 return this.canInvoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$Arguments(
))); |
13437 }; | 13437 }; |
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
14003 } | 14003 } |
14004 MethodMember.prototype.get$requiresFieldSyntax = function() { | 14004 MethodMember.prototype.get$requiresFieldSyntax = function() { |
14005 return false; | 14005 return false; |
14006 } | 14006 } |
14007 MethodMember.prototype.provideFieldSyntax = function() { | 14007 MethodMember.prototype.provideFieldSyntax = function() { |
14008 this._provideFieldSyntax = true; | 14008 this._provideFieldSyntax = true; |
14009 } | 14009 } |
14010 MethodMember.prototype.providePropertySyntax = function() { | 14010 MethodMember.prototype.providePropertySyntax = function() { |
14011 this._providePropertySyntax = true; | 14011 this._providePropertySyntax = true; |
14012 } | 14012 } |
14013 MethodMember.prototype._set = function(context, Node, target, value, isDynamic)
{ | 14013 MethodMember.prototype._set = function(context, node, target, value, isDynamic)
{ |
14014 $globals.world.error('can not set method', this.definition.span); | 14014 $globals.world.error('cannot set method', node.span); |
14015 } | 14015 } |
14016 MethodMember.prototype._get = function(context, node, target, isDynamic) { | 14016 MethodMember.prototype._get = function(context, node, target, isDynamic) { |
14017 this.declaringType.genMethod(this); | 14017 this.declaringType.genMethod(this); |
14018 this._provideOptionalParamInfo = true; | 14018 this._provideOptionalParamInfo = true; |
14019 if ($notnull_bool(this.isStatic)) { | 14019 if ($notnull_bool(this.isStatic)) { |
14020 this.declaringType.markUsed(); | 14020 this.declaringType.markUsed(); |
14021 var type = $notnull_bool(this.declaringType.get$isTop()) ? '' : ('' + this.d
eclaringType.get$jsname() + '.'); | 14021 var type = $notnull_bool(this.declaringType.get$isTop()) ? '' : ('' + this.d
eclaringType.get$jsname() + '.'); |
14022 return new Value(this.get$functionType(), ('' + type + this.get$jsname()), n
ode.span, true); | 14022 return new Value(this.get$functionType(), ('' + type + this.get$jsname()), n
ode.span, true); |
14023 } | 14023 } |
14024 this._providePropertySyntax = true; | 14024 this._providePropertySyntax = true; |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
14159 if ($notnull_bool(this.get$isConstructor())) { | 14159 if ($notnull_bool(this.get$isConstructor())) { |
14160 return this._invokeConstructor(context, node, target, args, argsString); | 14160 return this._invokeConstructor(context, node, target, args, argsString); |
14161 } | 14161 } |
14162 if ($notnull_bool(target.isSuper)) { | 14162 if ($notnull_bool(target.isSuper)) { |
14163 return new Value(this.get$inferredResult(), ('' + this.declaringType.get$jsn
ame() + '.prototype.' + this.get$jsname() + '.call(' + argsString + ')'), node.s
pan, true); | 14163 return new Value(this.get$inferredResult(), ('' + this.declaringType.get$jsn
ame() + '.prototype.' + this.get$jsname() + '.call(' + argsString + ')'), node.s
pan, true); |
14164 } | 14164 } |
14165 if ($notnull_bool(this.get$isOperator())) { | 14165 if ($notnull_bool(this.get$isOperator())) { |
14166 return this._invokeBuiltin(context, node, target, args, argsCode, isDynamic)
; | 14166 return this._invokeBuiltin(context, node, target, args, argsCode, isDynamic)
; |
14167 } | 14167 } |
14168 if ($notnull_bool(this.isFactory)) { | 14168 if ($notnull_bool(this.isFactory)) { |
14169 $assert(target.isType, "target.isType", "member.dart", 958, 14); | 14169 $assert(target.isType, "target.isType", "member.dart", 960, 14); |
14170 return new Value(target.type, ('' + this.get$generatedFactoryName() + '(' +
argsString + ')'), node.span, true); | 14170 return new Value(target.type, ('' + this.get$generatedFactoryName() + '(' +
argsString + ')'), node.span, true); |
14171 } | 14171 } |
14172 if ($notnull_bool(this.isStatic)) { | 14172 if ($notnull_bool(this.isStatic)) { |
14173 if ($notnull_bool(this.declaringType.get$isTop())) { | 14173 if ($notnull_bool(this.declaringType.get$isTop())) { |
14174 return new Value(this.get$inferredResult(), ('' + this.get$jsname() + '('
+ argsString + ')'), node != null ? node.span : node, true); | 14174 return new Value(this.get$inferredResult(), ('' + this.get$jsname() + '('
+ argsString + ')'), node != null ? node.span : node, true); |
14175 } | 14175 } |
14176 return new Value(this.get$inferredResult(), ('' + this.declaringType.get$jsn
ame() + '.' + this.get$jsname() + '(' + argsString + ')'), node.span, true); | 14176 return new Value(this.get$inferredResult(), ('' + this.declaringType.get$jsn
ame() + '.' + this.get$jsname() + '(' + argsString + ')'), node.span, true); |
14177 } | 14177 } |
14178 var code = ('' + target.code + '.' + this.get$jsname() + '(' + argsString + ')
'); | 14178 var code = ('' + target.code + '.' + this.get$jsname() + '(' + argsString + ')
'); |
14179 if ($notnull_bool(target.get$isConst())) { | 14179 if ($notnull_bool(target.get$isConst())) { |
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
14594 node.type = (($0 = baseType.getOrMakeConcreteType$1(typeArguments)) && $0.
is$lang_Type()); | 14594 node.type = (($0 = baseType.getOrMakeConcreteType$1(typeArguments)) && $0.
is$lang_Type()); |
14595 return node.type; | 14595 return node.type; |
14596 } | 14596 } |
14597 } | 14597 } |
14598 return Member.prototype.resolveType.call(this, node, isRequired); | 14598 return Member.prototype.resolveType.call(this, node, isRequired); |
14599 } | 14599 } |
14600 MethodMember.prototype._get$3 = function($0, $1, $2) { | 14600 MethodMember.prototype._get$3 = function($0, $1, $2) { |
14601 return this._get(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), false); | 14601 return this._get(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), false); |
14602 }; | 14602 }; |
14603 MethodMember.prototype._set$4 = function($0, $1, $2, $3) { | 14603 MethodMember.prototype._set$4 = function($0, $1, $2, $3) { |
14604 return this._set(($0 && $0.is$MethodGenerator()), $1, ($2 && $2.is$Value()), (
$3 && $3.is$Value()), false); | 14604 return this._set(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()), (
$2 && $2.is$Value()), ($3 && $3.is$Value()), false); |
14605 }; | 14605 }; |
14606 MethodMember.prototype.canInvoke$2 = function($0, $1) { | 14606 MethodMember.prototype.canInvoke$2 = function($0, $1) { |
14607 return this.canInvoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$Arguments(
))); | 14607 return this.canInvoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$Arguments(
))); |
14608 }; | 14608 }; |
14609 MethodMember.prototype.invoke$4 = function($0, $1, $2, $3) { | 14609 MethodMember.prototype.invoke$4 = function($0, $1, $2, $3) { |
14610 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()),
($2 && $2.is$Value()), ($3 && $3.is$Arguments()), false); | 14610 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()),
($2 && $2.is$Value()), ($3 && $3.is$Arguments()), false); |
14611 }; | 14611 }; |
14612 MethodMember.prototype.invoke$4$isDynamic = function($0, $1, $2, $3, isDynamic)
{ | 14612 MethodMember.prototype.invoke$4$isDynamic = function($0, $1, $2, $3, isDynamic)
{ |
14613 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()),
($2 && $2.is$Value()), ($3 && $3.is$Arguments()), $assert_bool(isDynamic)); | 14613 return this.invoke(($0 && $0.is$MethodGenerator()), ($1 && $1.is$lang_Node()),
($2 && $2.is$Value()), ($3 && $3.is$Arguments()), $assert_bool(isDynamic)); |
14614 }; | 14614 }; |
(...skipping 5849 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
20464 } | 20464 } |
20465 ret = new MemberSet(member, false); | 20465 ret = new MemberSet(member, false); |
20466 this._resolvedMembers.$setindex(memberName, ret); | 20466 this._resolvedMembers.$setindex(memberName, ret); |
20467 if ($notnull_bool(member.get$isStatic())) { | 20467 if ($notnull_bool(member.get$isStatic())) { |
20468 return ret; | 20468 return ret; |
20469 } | 20469 } |
20470 else { | 20470 else { |
20471 var $list = this.get$subtypes(); | 20471 var $list = this.get$subtypes(); |
20472 for (var $i = this.get$subtypes().iterator(); $i.hasNext$0(); ) { | 20472 for (var $i = this.get$subtypes().iterator(); $i.hasNext$0(); ) { |
20473 var t = $i.next$0(); | 20473 var t = $i.next$0(); |
20474 var m = null; | |
20475 if (!$notnull_bool(this.isClass) && $notnull_bool(t.get$isClass())) { | 20474 if (!$notnull_bool(this.isClass) && $notnull_bool(t.get$isClass())) { |
20476 m = t.getMember$1(memberName); | 20475 var m = t.getMember$1(memberName); |
| 20476 if ($notnull_bool($ne(m, null)) && ret.members.indexOf(m) == -1) { |
| 20477 ret.add((m && m.is$Member())); |
| 20478 } |
20477 } | 20479 } |
20478 else { | 20480 else { |
20479 m = t.get$members().$index(memberName); | 20481 var m = t.get$members().$index(memberName); |
| 20482 if ($notnull_bool($ne(m, null))) ret.add((m && m.is$Member())); |
20480 } | 20483 } |
20481 if ($notnull_bool($ne(m, null))) ret.add((m && m.is$Member())); | |
20482 } | 20484 } |
20483 return ret; | 20485 return ret; |
20484 } | 20486 } |
20485 } | 20487 } |
20486 DefinedType._getDottedName = function(type) { | 20488 DefinedType._getDottedName = function(type) { |
20487 if (type.names != null) { | 20489 if (type.names != null) { |
20488 var names = map(type.names, (function (n) { | 20490 var names = map(type.names, (function (n) { |
20489 return n.get$name(); | 20491 return n.get$name(); |
20490 }) | 20492 }) |
20491 ); | 20493 ); |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
20563 } | 20565 } |
20564 else { | 20566 else { |
20565 $globals.world.internalError('unknown type reference', node.span); | 20567 $globals.world.internalError('unknown type reference', node.span); |
20566 } | 20568 } |
20567 return node.type; | 20569 return node.type; |
20568 } | 20570 } |
20569 DefinedType.prototype.resolveTypeParams = function(inType) { | 20571 DefinedType.prototype.resolveTypeParams = function(inType) { |
20570 return this; | 20572 return this; |
20571 } | 20573 } |
20572 DefinedType.prototype.getOrMakeConcreteType = function(typeArgs) { | 20574 DefinedType.prototype.getOrMakeConcreteType = function(typeArgs) { |
20573 $assert(this.get$isGeneric(), "isGeneric", "type.dart", 1248, 12); | 20575 $assert(this.get$isGeneric(), "isGeneric", "type.dart", 1251, 12); |
20574 var names = [this.name]; | 20576 var names = [this.name]; |
20575 var typeMap = $map([]); | 20577 var typeMap = $map([]); |
20576 for (var i = 0; | 20578 for (var i = 0; |
20577 i < typeArgs.length; i++) { | 20579 i < typeArgs.length; i++) { |
20578 var paramName = this.typeParameters.$index(i).get$name(); | 20580 var paramName = this.typeParameters.$index(i).get$name(); |
20579 typeMap.$setindex(paramName, typeArgs.$index(i)); | 20581 typeMap.$setindex(paramName, typeArgs.$index(i)); |
20580 names.add$1(typeArgs.$index(i).get$name()); | 20582 names.add$1(typeArgs.$index(i).get$name()); |
20581 } | 20583 } |
20582 var concreteName = Strings.join((names && names.is$List$String()), '\$'); | 20584 var concreteName = Strings.join((names && names.is$List$String()), '\$'); |
20583 var ret = this._concreteTypes.$index(concreteName); | 20585 var ret = this._concreteTypes.$index(concreteName); |
20584 if ($notnull_bool(ret == null)) { | 20586 if ($notnull_bool(ret == null)) { |
20585 ret = new ConcreteType($assert_String(concreteName), this, typeMap, typeArgs
); | 20587 ret = new ConcreteType($assert_String(concreteName), this, typeMap, typeArgs
); |
20586 this._concreteTypes.$setindex(concreteName, ret); | 20588 this._concreteTypes.$setindex(concreteName, ret); |
20587 } | 20589 } |
20588 return (ret && ret.is$lang_Type()); | 20590 return (ret && ret.is$lang_Type()); |
20589 } | 20591 } |
20590 DefinedType.prototype.getCallStub = function(args) { | 20592 DefinedType.prototype.getCallStub = function(args) { |
20591 $assert(this.get$isFunction(), "isFunction", "type.dart", 1268, 12); | 20593 $assert(this.get$isFunction(), "isFunction", "type.dart", 1271, 12); |
20592 var name = _getCallStubName('call', args); | 20594 var name = _getCallStubName('call', args); |
20593 if (this.varStubs == null) this.varStubs = $map([]); | 20595 if (this.varStubs == null) this.varStubs = $map([]); |
20594 var stub = this.varStubs.$index(name); | 20596 var stub = this.varStubs.$index(name); |
20595 if ($notnull_bool(stub == null)) { | 20597 if ($notnull_bool(stub == null)) { |
20596 stub = new VarFunctionStub($assert_String(name), args); | 20598 stub = new VarFunctionStub($assert_String(name), args); |
20597 this.varStubs.$setindex(name, stub); | 20599 this.varStubs.$setindex(name, stub); |
20598 } | 20600 } |
20599 return (stub && stub.is$VarFunctionStub()); | 20601 return (stub && stub.is$VarFunctionStub()); |
20600 } | 20602 } |
20601 DefinedType.prototype.addDirectSubtype$1 = function($0) { | 20603 DefinedType.prototype.addDirectSubtype$1 = function($0) { |
(...skipping 751 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
21353 var mset = this._members.$index(member.name); | 21355 var mset = this._members.$index(member.name); |
21354 if ($notnull_bool(mset == null)) { | 21356 if ($notnull_bool(mset == null)) { |
21355 mset = new MemberSet(member, true); | 21357 mset = new MemberSet(member, true); |
21356 this._members.$setindex(mset.get$name(), mset); | 21358 this._members.$setindex(mset.get$name(), mset); |
21357 } | 21359 } |
21358 else { | 21360 else { |
21359 mset.get$members().add$1(member); | 21361 mset.get$members().add$1(member); |
21360 } | 21362 } |
21361 } | 21363 } |
21362 World.prototype._addTopName = function(named) { | 21364 World.prototype._addTopName = function(named) { |
21363 var $0; | |
21364 var existing = this._topNames.$index(named.get$name()); | 21365 var existing = this._topNames.$index(named.get$name()); |
21365 if ($notnull_bool($ne(existing, null))) { | 21366 if ($notnull_bool($ne(existing, null))) { |
21366 this.info(('mangling matching top level name "' + named.get$name() + '" in '
) + ('both "' + named.get$library().name + '" and "' + existing.get$library().ge
t$name() + '"')); | 21367 this.info(('mangling matching top level name "' + named.get$name() + '" in '
) + ('both "' + named.get$library().name + '" and "' + existing.get$library().ge
t$name() + '"')); |
21367 if ($notnull_bool(named.get$isNative())) { | 21368 if ($notnull_bool(named.get$isNative())) { |
21368 if ($notnull_bool(existing.get$isNative())) { | 21369 if ($notnull_bool(existing.get$isNative())) { |
21369 $globals.world.internalError(('conflicting native names "' + named.get$n
ame() + '" ') + ('(already defined in ' + existing.get$span().get$locationText()
+ ')'), (($0 = named.get$span()) && $0.is$SourceSpan())); | 21370 $globals.world.internalError(('conflicting native names "' + named.get$n
ame() + '" ') + ('(already defined in ' + existing.get$span().get$locationText()
+ ')'), named.get$span()); |
21370 } | 21371 } |
21371 else { | 21372 else { |
21372 this._topNames.$setindex(named.get$name(), named); | 21373 this._topNames.$setindex(named.get$name(), named); |
21373 this._addJavascriptTopName((existing && existing.is$Named())); | 21374 this._addJavascriptTopName((existing && existing.is$Named())); |
21374 } | 21375 } |
21375 } | 21376 } |
21376 else if ($notnull_bool(named.get$library().get$isCore())) { | 21377 else if ($notnull_bool(named.get$library().get$isCore())) { |
21377 if ($notnull_bool(existing.get$library().get$isCore())) { | 21378 if ($notnull_bool(existing.get$library().get$isCore())) { |
21378 $globals.world.internalError(('conflicting top-level names in core "' +
named.get$name() + '" ') + ('(previously defined in ' + existing.get$span().get$
locationText() + ')'), (($0 = named.get$span()) && $0.is$SourceSpan())); | 21379 $globals.world.internalError(('conflicting top-level names in core "' +
named.get$name() + '" ') + ('(previously defined in ' + existing.get$span().get$
locationText() + ')'), named.get$span()); |
21379 } | 21380 } |
21380 else { | 21381 else { |
21381 this._topNames.$setindex(named.get$name(), named); | 21382 this._topNames.$setindex(named.get$name(), named); |
21382 this._addJavascriptTopName((existing && existing.is$Named())); | 21383 this._addJavascriptTopName((existing && existing.is$Named())); |
21383 } | 21384 } |
21384 } | 21385 } |
21385 else { | 21386 else { |
21386 this._addJavascriptTopName(named); | 21387 this._addJavascriptTopName(named); |
21387 } | 21388 } |
21388 } | 21389 } |
21389 else { | 21390 else { |
21390 this._topNames.$setindex(named.get$name(), named); | 21391 this._topNames.$setindex(named.get$name(), named); |
21391 } | 21392 } |
21392 } | 21393 } |
21393 World.prototype._addJavascriptTopName = function(named) { | 21394 World.prototype._addJavascriptTopName = function(named) { |
21394 var $0; | |
21395 named.set$jsname(('' + named.get$library().get$jsname() + '_' + named.get$name
())); | 21395 named.set$jsname(('' + named.get$library().get$jsname() + '_' + named.get$name
())); |
21396 var existing = this._topNames.$index(named.get$jsname()); | 21396 var existing = this._topNames.$index(named.get$jsname()); |
21397 if ($notnull_bool($ne(existing, null)) && $notnull_bool($ne(existing, named)))
{ | 21397 if ($notnull_bool($ne(existing, null)) && $notnull_bool($ne(existing, named)))
{ |
21398 $globals.world.internalError(('name mangling failed for "' + named.get$jsnam
e() + '" ') + ('("' + named.get$jsname() + '" defined also in ' + existing.get$s
pan().get$locationText() + ')'), (($0 = named.get$span()) && $0.is$SourceSpan())
); | 21398 $globals.world.internalError(('name mangling failed for "' + named.get$jsnam
e() + '" ') + ('("' + named.get$jsname() + '" defined also in ' + existing.get$s
pan().get$locationText() + ')'), named.get$span()); |
21399 } | 21399 } |
21400 this._topNames.$setindex(named.get$jsname(), named); | 21400 this._topNames.$setindex(named.get$jsname(), named); |
21401 } | 21401 } |
21402 World.prototype._addType = function(type) { | 21402 World.prototype._addType = function(type) { |
21403 if (!$notnull_bool(type.get$isTop())) this._addTopName(type); | 21403 if (!$notnull_bool(type.get$isTop())) this._addTopName(type); |
21404 } | 21404 } |
21405 World.prototype._addToCoreLib = function(name, isClass) { | 21405 World.prototype._addToCoreLib = function(name, isClass) { |
21406 var ret = new DefinedType(name, this.corelib, null, isClass); | 21406 var ret = new DefinedType(name, this.corelib, null, isClass); |
21407 this.corelib.types.$setindex(name, ret); | 21407 this.corelib.types.$setindex(name, ret); |
21408 return ret; | 21408 return ret; |
(...skipping 981 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
22390 NATIVE, | 22390 NATIVE, |
22391 NEGATE, | 22391 NEGATE, |
22392 OPERATOR, | 22392 OPERATOR, |
22393 SET, | 22393 SET, |
22394 SOURCE, | 22394 SOURCE, |
22395 STATIC, | 22395 STATIC, |
22396 TYPEDEF ]*/; | 22396 TYPEDEF ]*/; |
22397 var $globals = {}; | 22397 var $globals = {}; |
22398 $static_init(); | 22398 $static_init(); |
22399 main(); | 22399 main(); |
OLD | NEW |