123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- define(["amber/boot", "amber_core/Compiler-AST"], function($boot){"use strict";
- if(!$boot.nilAsReceiver)$boot.nilAsReceiver=$boot.nil;
- var $core=$boot.api,nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
- if(!$boot.nilAsClass)$boot.nilAsClass=$boot.dnu;
- $core.addPackage("Compiler-Strom");
- $core.packages["Compiler-Strom"].innerEval = function (expr) { return eval(expr); };
- $core.packages["Compiler-Strom"].transport = {"type":"amd","amdNamespace":"amber_core"};
- $core.addClass("StromNode", $globals.ASTNode, ["tag", "attributes", "children"], "Compiler-Strom");
- //>>excludeStart("ide", pragmas.excludeIdeData);
- $globals.StromNode.comment="I represent an assignment node.";
- //>>excludeEnd("ide");
- $core.addMethod(
- $core.method({
- selector: "acceptDagVisitor:",
- protocol: "visiting",
- fn: function (aVisitor){
- var self=this,$self=this;
- //>>excludeStart("ctx", pragmas.excludeDebugContexts);
- return $core.withContext(function($ctx1) {
- //>>excludeEnd("ctx");
- return $recv(aVisitor)._visitDagNode_(self);
- //>>excludeStart("ctx", pragmas.excludeDebugContexts);
- }, function($ctx1) {$ctx1.fill(self,"acceptDagVisitor:",{aVisitor:aVisitor},$globals.StromNode)});
- //>>excludeEnd("ctx");
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: ["aVisitor"],
- source: "acceptDagVisitor: aVisitor\x0a\x09^ aVisitor visitDagNode: self",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: ["visitDagNode:"]
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "attributes",
- protocol: "accessing",
- fn: function (){
- var self=this,$self=this;
- return $self["@attributes"];
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: [],
- source: "attributes\x0a\x09^ attributes",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "attributes:",
- protocol: "accessing",
- fn: function (anObject){
- var self=this,$self=this;
- $self["@attributes"]=anObject;
- return self;
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: ["anObject"],
- source: "attributes: anObject\x0a\x09attributes := anObject",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "children",
- protocol: "accessing",
- fn: function (){
- var self=this,$self=this;
- return $self["@children"];
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: [],
- source: "children\x0a\x09^ children",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "children:",
- protocol: "accessing",
- fn: function (anObject){
- var self=this,$self=this;
- $self["@children"]=anObject;
- return self;
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: ["anObject"],
- source: "children: anObject\x0a\x09children := anObject",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "dagChildren",
- protocol: "accessing",
- fn: function (){
- var self=this,$self=this;
- //>>excludeStart("ctx", pragmas.excludeDebugContexts);
- return $core.withContext(function($ctx1) {
- //>>excludeEnd("ctx");
- var $1;
- $1=[$self._tag()];
- $recv($1)._addAll_($self._attributes());
- //>>excludeStart("ctx", pragmas.excludeDebugContexts);
- $ctx1.sendIdx["addAll:"]=1;
- //>>excludeEnd("ctx");
- $recv($1)._addAll_($self._children());
- return $recv($1)._yourself();
- //>>excludeStart("ctx", pragmas.excludeDebugContexts);
- }, function($ctx1) {$ctx1.fill(self,"dagChildren",{},$globals.StromNode)});
- //>>excludeEnd("ctx");
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: [],
- source: "dagChildren\x0a\x09^ { self tag }\x0a\x09\x09addAll: self attributes;\x0a\x09\x09addAll: self children;\x0a\x09\x09yourself",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: ["addAll:", "tag", "attributes", "children", "yourself"]
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "tag",
- protocol: "accessing",
- fn: function (){
- var self=this,$self=this;
- return $self["@tag"];
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: [],
- source: "tag\x0a\x09^ tag",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- $core.addMethod(
- $core.method({
- selector: "tag:",
- protocol: "accessing",
- fn: function (anObject){
- var self=this,$self=this;
- $self["@tag"]=anObject;
- return self;
- },
- //>>excludeStart("ide", pragmas.excludeIdeData);
- args: ["anObject"],
- source: "tag: anObject\x0a\x09tag := anObject",
- referencedClasses: [],
- //>>excludeEnd("ide");
- messageSends: []
- }),
- $globals.StromNode);
- });
|