amber/js/Kernel-Collections.deploy.js in resin-0.3.1 vs amber/js/Kernel-Collections.deploy.js in resin-0.4.0
- old
+ new
@@ -4,108 +4,112 @@
"__eq",
smalltalk.method({
selector: "=",
fn: function (anAssociation){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(anAssociation,"_class",[])]),"_and_",[(function(){
-return smalltalk.send(smalltalk.send(smalltalk.send(self,"_key",[]),"__eq",[smalltalk.send(anAssociation,"_key",[])]),"_and_",[(function(){
-return smalltalk.send(smalltalk.send(self,"_value",[]),"__eq",[smalltalk.send(anAssociation,"_value",[])]);
-})]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._class()).__eq(_st(anAssociation)._class()))._and_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(_st(_st(self)._key()).__eq(_st(anAssociation)._key()))._and_((function(){
+return smalltalk.withContext(function($ctx3) {
return _st(_st(self)._value()).__eq(_st(anAssociation)._value());
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"=",{anAssociation:anAssociation}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_key",
smalltalk.method({
selector: "key",
fn: function (){
var self=this;
-return self["@key"];
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self["@key"];
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"key",{}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_key_",
smalltalk.method({
selector: "key:",
fn: function (aKey){
var self=this;
-self["@key"]=aKey;
-return self}
+return smalltalk.withContext(function($ctx1) {
self["@key"]=aKey;
+return self}, function($ctx1) {$ctx1.fill(self,"key:",{aKey:aKey}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
-return smalltalk.send(self,"_storeOn_",[aStream]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.String || String))._streamContents_((function(aStream){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._storeOn_(aStream);
+}, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_storeOn_",
smalltalk.method({
selector: "storeOn:",
fn: function (aStream){
var self=this;
-smalltalk.send(self["@key"],"_storeOn_",[aStream]);
-smalltalk.send(aStream,"_nextPutAll_",["->"]);
-smalltalk.send(self["@value"],"_storeOn_",[aStream]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self["@key"])._storeOn_(aStream);
+_st(aStream)._nextPutAll_("->");
+_st(self["@value"])._storeOn_(aStream);
+return self}, function($ctx1) {$ctx1.fill(self,"storeOn:",{aStream:aStream}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_value",
smalltalk.method({
selector: "value",
fn: function (){
var self=this;
-return self["@value"];
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self["@value"];
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"value",{}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_value_",
smalltalk.method({
selector: "value:",
fn: function (aValue){
var self=this;
-self["@value"]=aValue;
-return self}
+return smalltalk.withContext(function($ctx1) {
self["@value"]=aValue;
+return self}, function($ctx1) {$ctx1.fill(self,"value:",{aValue:aValue}, smalltalk.Association)})}
}),
smalltalk.Association);
smalltalk.addMethod(
"_key_value_",
smalltalk.method({
selector: "key:value:",
fn: function (aKey,aValue){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_key_",[aKey]);
-smalltalk.send($2,"_value_",[aValue]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._key_(aKey);
+_st($2)._value_(aValue);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"key:value:",{aKey:aKey,aValue:aValue}, smalltalk.Association.klass)})}
}),
smalltalk.Association.klass);
smalltalk.addClass('Collection', smalltalk.Object, [], 'Kernel-Collections');
@@ -113,613 +117,628 @@
"__comma",
smalltalk.method({
selector: ",",
fn: function (aCollection){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_copy",[]);
-smalltalk.send($2,"_addAll_",[aCollection]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._copy();
+_st($2)._addAll_(aCollection);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_add_",
smalltalk.method({
selector: "add:",
fn: function (anObject){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_addAll_",
smalltalk.method({
selector: "addAll:",
fn: function (aCollection){
var self=this;
-smalltalk.send(aCollection,"_do_",[(function(each){
-return smalltalk.send(self,"_add_",[each]);
-})]);
-return aCollection;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+_st(aCollection)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._add_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=aCollection;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"addAll:",{aCollection:aCollection}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_asArray",
smalltalk.method({
selector: "asArray",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.Array || Array),"_withAll_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.Array || Array))._withAll_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asArray",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_asJSON",
smalltalk.method({
selector: "asJSON",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asArray",[]),"_collect_",[(function(each){
-return smalltalk.send(each,"_asJSON",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asArray())._collect_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(each)._asJSON();
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_asOrderedCollection",
smalltalk.method({
selector: "asOrderedCollection",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_asArray",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._asArray();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asOrderedCollection",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_asSet",
smalltalk.method({
selector: "asSet",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.Set || Set),"_withAll_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.Set || Set))._withAll_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asSet",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_collect_",
smalltalk.method({
selector: "collect:",
fn: function (aBlock){
var self=this;
-var $1;
var stream;
-stream=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]),"_writeStream",[]);
-smalltalk.send(self,"_do_",[(function(each){
-return smalltalk.send(stream,"_nextPut_",[smalltalk.send(aBlock,"_value_",[each])]);
-})]);
-$1=smalltalk.send(stream,"_contents",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+stream=_st(_st(_st(self)._class())._new())._writeStream();
+_st(self)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(stream)._nextPut_(_st(aBlock)._value_(each));
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=_st(stream)._contents();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,stream:stream}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_copyWith_",
smalltalk.method({
selector: "copyWith:",
fn: function (anObject){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_copy",[]);
-smalltalk.send($2,"_add_",[anObject]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._copy();
+_st($2)._add_(anObject);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"copyWith:",{anObject:anObject}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_copyWithAll_",
smalltalk.method({
selector: "copyWithAll:",
fn: function (aCollection){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_copy",[]);
-smalltalk.send($2,"_addAll_",[aCollection]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._copy();
+_st($2)._addAll_(aCollection);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"copyWithAll:",{aCollection:aCollection}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_copyWithoutAll_",
smalltalk.method({
selector: "copyWithoutAll:",
fn: function (aCollection){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_reject_",[(function(each){
-return smalltalk.send(aCollection,"_includes_",[each]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._reject_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(aCollection)._includes_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"copyWithoutAll:",{aCollection:aCollection}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_detect_",
smalltalk.method({
selector: "detect:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_detect_ifNone_",[aBlock,(function(){
-return smalltalk.send(self,"_errorNotFound",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._detect_ifNone_(aBlock,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._errorNotFound();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"detect:",{aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_detect_ifNone_",
smalltalk.method({
selector: "detect:ifNone:",
fn: function (aBlock,anotherBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
for(var i = 0; i < self.length; i++)
if(aBlock(self[i]))
return self[i];
return anotherBlock();
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-for(var i=0;i<self.length;i++){aBlock(self[i]);};
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++){aBlock(self[i]);};
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_do_separatedBy_",
smalltalk.method({
selector: "do:separatedBy:",
fn: function (aBlock,anotherBlock){
var self=this;
var first;
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2;
first=true;
-smalltalk.send(self,"_do_",[(function(each){
-if(smalltalk.assert(first)){
+$1=self;
+$2=(function(each){
+return smalltalk.withContext(function($ctx2) {
$3=first;
+if(smalltalk.assert($3)){
first=false;
first;
} else {
-smalltalk.send(anotherBlock,"_value",[]);
+_st(anotherBlock)._value();
};
-return smalltalk.send(aBlock,"_value_",[each]);
-})]);
-return self}
+return _st(aBlock)._value_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
+_st($1)._do_($2);
+return self}, function($ctx1) {$ctx1.fill(self,"do:separatedBy:",{aBlock:aBlock,anotherBlock:anotherBlock,first:first}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_errorNotFound",
smalltalk.method({
selector: "errorNotFound",
fn: function (){
var self=this;
-smalltalk.send(self,"_error_",["Object is not in the collection"]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._error_("Object is not in the collection");
+return self}, function($ctx1) {$ctx1.fill(self,"errorNotFound",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_ifEmpty_",
smalltalk.method({
selector: "ifEmpty:",
fn: function (aBlock){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_isEmpty",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._isEmpty();
if(smalltalk.assert($2)){
-$1=smalltalk.send(aBlock,"_value",[]);
+$1=_st(aBlock)._value();
} else {
$1=self;
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"ifEmpty:",{aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_ifNotEmpty_",
smalltalk.method({
selector: "ifNotEmpty:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_notEmpty",[]);
-smalltalk.send($1,"_ifTrue_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._notEmpty();
+_st($1)._ifTrue_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"ifNotEmpty:",{aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_includes_",
smalltalk.method({
selector: "includes:",
fn: function (anObject){
var self=this;
-
- var i = self.length;
- while (i--) {
- if (smalltalk.send(self[i], "__eq", [anObject])) {return true;}
- }
- return false
- ;
-;
-return self}
+var sentinel;
+return smalltalk.withContext(function($ctx1) {
var $1;
+sentinel=_st((smalltalk.Object || Object))._new();
+$1=_st(_st(self)._detect_ifNone_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(each).__eq(anObject);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx2) {
return sentinel;
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))).__tild_eq(sentinel);
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject,sentinel:sentinel}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_inject_into_",
smalltalk.method({
selector: "inject:into:",
fn: function (anObject,aBlock){
var self=this;
var result;
+return smalltalk.withContext(function($ctx1) {
var $1;
result=anObject;
-smalltalk.send(self,"_do_",[(function(each){
-result=smalltalk.send(aBlock,"_value_value_",[result,each]);
+_st(self)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
result=_st(aBlock)._value_value_(result,each);
return result;
-})]);
-return result;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=result;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"inject:into:",{anObject:anObject,aBlock:aBlock,result:result}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_intersection_",
smalltalk.method({
selector: "intersection:",
fn: function (aCollection){
var self=this;
-var $1,$2;
-var set;
-var outputSet;
-set=smalltalk.send(self,"_asSet",[]);
-outputSet=smalltalk.send((smalltalk.Set || Set),"_new",[]);
-smalltalk.send(aCollection,"_do_",[(function(each){
-$1=smalltalk.send(smalltalk.send(set,"_includes_",[each]),"_and_",[(function(){
-return smalltalk.send(smalltalk.send(outputSet,"_includes_",[each]),"_not",[]);
-})]);
-if(smalltalk.assert($1)){
-return smalltalk.send(outputSet,"_add_",[each]);
+var set,outputSet;
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+set=_st(self)._asSet();
+outputSet=_st((smalltalk.Set || Set))._new();
+$1=aCollection;
+$2=(function(each){
+return smalltalk.withContext(function($ctx2) {
$3=_st(_st(set)._includes_(each))._and_((function(){
+return smalltalk.withContext(function($ctx3) {
return _st(_st(outputSet)._includes_(each))._not();
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+if(smalltalk.assert($3)){
+return _st(outputSet)._add_(each);
};
-})]);
-$2=smalltalk.send(smalltalk.send(self,"_class",[]),"_withAll_",[smalltalk.send(outputSet,"_asArray",[])]);
-return $2;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
+_st($1)._do_($2);
+$4=_st(_st(self)._class())._withAll_(_st(outputSet)._asArray());
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"intersection:",{aCollection:aCollection,set:set,outputSet:outputSet}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_isEmpty",
smalltalk.method({
selector: "isEmpty",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[(0)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._size()).__eq((0));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"isEmpty",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_notEmpty",
smalltalk.method({
selector: "notEmpty",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_isEmpty",[]),"_not",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._isEmpty())._not();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"notEmpty",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_occurrencesOf_",
smalltalk.method({
selector: "occurrencesOf:",
fn: function (anObject){
var self=this;
-var $1;
var tally;
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
tally=(0);
-smalltalk.send(self,"_do_",[(function(each){
-$1=smalltalk.send(anObject,"__eq",[each]);
-if(smalltalk.assert($1)){
-tally=smalltalk.send(tally,"__plus",[(1)]);
+$1=self;
+$2=(function(each){
+return smalltalk.withContext(function($ctx2) {
$3=_st(anObject).__eq(each);
+if(smalltalk.assert($3)){
+tally=_st(tally).__plus((1));
return tally;
};
-})]);
-return tally;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
+_st($1)._do_($2);
+$4=tally;
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"occurrencesOf:",{anObject:anObject,tally:tally}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
-smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(smalltalk.send(self,"_printString",[],smalltalk.Object),"__comma",[" ("])]);
-smalltalk.send(self,"_do_separatedBy_",[(function(each){
-return smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(each,"_printString",[])]);
-}),(function(){
-return smalltalk.send(aStream,"_nextPutAll_",[" "]);
-})]);
-return smalltalk.send(aStream,"_nextPutAll_",[")"]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.String || String))._streamContents_((function(aStream){
+return smalltalk.withContext(function($ctx2) {
_st(aStream)._nextPutAll_(_st(smalltalk.Object.fn.prototype._printString.apply(_st(self), [])).__comma(" ("));
+_st(self)._do_separatedBy_((function(each){
+return smalltalk.withContext(function($ctx3) {
return _st(aStream)._nextPutAll_(_st(each)._printString());
+}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx3) {
return _st(aStream)._nextPutAll_(" ");
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+return _st(aStream)._nextPutAll_(")");
+}, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_readStream",
smalltalk.method({
selector: "readStream",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_stream",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._stream();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"readStream",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_reject_",
smalltalk.method({
selector: "reject:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_select_",[(function(each){
-return smalltalk.send(smalltalk.send(aBlock,"_value_",[each]),"__eq",[false]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._select_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(_st(aBlock)._value_(each)).__eq(false);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"reject:",{aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_remove_",
smalltalk.method({
selector: "remove:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_remove_ifAbsent_",[anObject,(function(){
-return smalltalk.send(self,"_errorNotFound",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._remove_ifAbsent_(anObject,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._errorNotFound();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_remove_ifAbsent_",
smalltalk.method({
selector: "remove:ifAbsent:",
fn: function (anObject,aBlock){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_select_",
smalltalk.method({
selector: "select:",
fn: function (aBlock){
var self=this;
-var $1,$2;
var stream;
-stream=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]),"_writeStream",[]);
-smalltalk.send(self,"_do_",[(function(each){
-$1=smalltalk.send(aBlock,"_value_",[each]);
-if(smalltalk.assert($1)){
-return smalltalk.send(stream,"_nextPut_",[each]);
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+stream=_st(_st(_st(self)._class())._new())._writeStream();
+$1=self;
+$2=(function(each){
+return smalltalk.withContext(function($ctx2) {
$3=_st(aBlock)._value_(each);
+if(smalltalk.assert($3)){
+return _st(stream)._nextPut_(each);
};
-})]);
-$2=smalltalk.send(stream,"_contents",[]);
-return $2;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
+_st($1)._do_($2);
+$4=_st(stream)._contents();
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,stream:stream}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_stream",
smalltalk.method({
selector: "stream",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_streamClass",[]),"_on_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._streamClass())._on_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"stream",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_streamClass",
smalltalk.method({
selector: "streamClass",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"_streamClass",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._class())._streamClass();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_writeStream",
smalltalk.method({
selector: "writeStream",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_stream",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._stream();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"writeStream",{}, smalltalk.Collection)})}
}),
smalltalk.Collection);
smalltalk.addMethod(
"_new_",
smalltalk.method({
selector: "new:",
fn: function (anInteger){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_new",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._new();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addMethod(
"_streamClass",
smalltalk.method({
selector: "streamClass",
fn: function (){
var self=this;
-return (smalltalk.Stream || Stream);
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=(smalltalk.Stream || Stream);
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addMethod(
"_with_",
smalltalk.method({
selector: "with:",
fn: function (anObject){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_add_",[anObject]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._add_(anObject);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addMethod(
"_with_with_",
smalltalk.method({
selector: "with:with:",
fn: function (anObject,anotherObject){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_add_",[anObject]);
-smalltalk.send($2,"_add_",[anotherObject]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._add_(anObject);
+_st($2)._add_(anotherObject);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anotherObject:anotherObject}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addMethod(
"_with_with_with_",
smalltalk.method({
selector: "with:with:with:",
fn: function (firstObject,secondObject,thirdObject){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_add_",[firstObject]);
-smalltalk.send($2,"_add_",[secondObject]);
-smalltalk.send($2,"_add_",[thirdObject]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._add_(firstObject);
+_st($2)._add_(secondObject);
+_st($2)._add_(thirdObject);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:with:with:",{firstObject:firstObject,secondObject:secondObject,thirdObject:thirdObject}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addMethod(
"_withAll_",
smalltalk.method({
selector: "withAll:",
fn: function (aCollection){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_addAll_",[aCollection]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._addAll_(aCollection);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection}, smalltalk.Collection.klass)})}
}),
smalltalk.Collection.klass);
smalltalk.addClass('HashedCollection', smalltalk.Collection, [], 'Kernel-Collections');
@@ -727,477 +746,490 @@
"__comma",
smalltalk.method({
selector: ",",
fn: function (aCollection){
var self=this;
-smalltalk.send(self,"_shouldNotImplement",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._shouldNotImplement();
+return self}, function($ctx1) {$ctx1.fill(self,",",{aCollection:aCollection}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"__eq",
smalltalk.method({
selector: "=",
fn: function (aHashedCollection){
var self=this;
-var $1,$2,$3;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aHashedCollection,"_class",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1,$2,$3;
+$1=_st(_st(self)._class()).__eq(_st(aHashedCollection)._class());
if(! smalltalk.assert($1)){
return false;
};
-$2=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[smalltalk.send(aHashedCollection,"_size",[])]);
+$2=_st(_st(self)._size()).__eq(_st(aHashedCollection)._size());
if(! smalltalk.assert($2)){
return false;
};
-$3=smalltalk.send(smalltalk.send(self,"_associations",[]),"__eq",[smalltalk.send(aHashedCollection,"_associations",[])]);
+$3=_st(_st(self)._associations()).__eq(_st(aHashedCollection)._associations());
return $3;
-}
+}, function($ctx1) {$ctx1.fill(self,"=",{aHashedCollection:aHashedCollection}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_add_",
smalltalk.method({
selector: "add:",
fn: function (anAssociation){
var self=this;
-smalltalk.send(self,"_at_put_",[smalltalk.send(anAssociation,"_key",[]),smalltalk.send(anAssociation,"_value",[])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._at_put_(_st(anAssociation)._key(),_st(anAssociation)._value());
+return self}, function($ctx1) {$ctx1.fill(self,"add:",{anAssociation:anAssociation}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_addAll_",
smalltalk.method({
selector: "addAll:",
fn: function (aHashedCollection){
var self=this;
-smalltalk.send(self,"_addAll_",[smalltalk.send(aHashedCollection,"_associations",[])],smalltalk.Collection);
-return aHashedCollection;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+smalltalk.Collection.fn.prototype._addAll_.apply(_st(self), [_st(aHashedCollection)._associations()]);
+$1=aHashedCollection;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"addAll:",{aHashedCollection:aHashedCollection}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_asDictionary",
smalltalk.method({
selector: "asDictionary",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.Dictionary || Dictionary),"_fromPairs_",[smalltalk.send(self,"_associations",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.Dictionary || Dictionary))._fromPairs_(_st(self)._associations());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asDictionary",{}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_asJSON",
smalltalk.method({
selector: "asJSON",
fn: function (){
var self=this;
var c;
-c=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
-return smalltalk.send(c,"_at_put_",[key,smalltalk.send(value,"_asJSON",[])]);
-})]);
-return c;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+c=_st(_st(self)._class())._new();
+_st(self)._keysAndValuesDo_((function(key,value){
+return smalltalk.withContext(function($ctx2) {
return _st(c)._at_put_(key,_st(value)._asJSON());
+}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
+$1=c;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asJSON",{c:c}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_associations",
smalltalk.method({
selector: "associations",
fn: function (){
var self=this;
var associations;
+return smalltalk.withContext(function($ctx1) {
var $1;
associations=[];
-smalltalk.send(smalltalk.send(self,"_keys",[]),"_do_",[(function(each){
-return smalltalk.send(associations,"_add_",[smalltalk.send((smalltalk.Association || Association),"_key_value_",[each,smalltalk.send(self,"_at_",[each])])]);
-})]);
-return associations;
-}
+_st(_st(self)._keys())._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(associations)._add_(_st((smalltalk.Association || Association))._key_value_(each,_st(self)._at_(each)));
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=associations;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"associations",{associations:associations}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_associationsDo_",
smalltalk.method({
selector: "associationsDo:",
fn: function (aBlock){
var self=this;
-smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(_st(self)._associations())._do_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"associationsDo:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_",
smalltalk.method({
selector: "at:",
fn: function (aKey){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_ifAbsent_",[aKey,(function(){
-return smalltalk.send(self,"_errorNotFound",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_ifAbsent_(aKey,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._errorNotFound();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:",{aKey:aKey}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (aKey,aBlock){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_includesKey_",[aKey]);
-$1=smalltalk.send($2,"_ifTrue_ifFalse_",[(function(){
-return smalltalk.send(self,"_basicAt_",[aKey]);
-}),aBlock]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._includesKey_(aKey);
+$1=_st($2)._ifTrue_ifFalse_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._basicAt_(aKey);
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),aBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_ifAbsentPut_",
smalltalk.method({
selector: "at:ifAbsentPut:",
fn: function (aKey,aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_ifAbsent_",[aKey,(function(){
-return smalltalk.send(self,"_at_put_",[aKey,smalltalk.send(aBlock,"_value",[])]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_ifAbsent_(aKey,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._at_put_(aKey,_st(aBlock)._value());
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:ifAbsentPut:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_ifPresent_",
smalltalk.method({
selector: "at:ifPresent:",
fn: function (aKey,aBlock){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_includesKey_",[aKey]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._includesKey_(aKey);
if(smalltalk.assert($2)){
-$1=smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_at_",[aKey])]);
+$1=_st(aBlock)._value_(_st(self)._at_(aKey));
} else {
$1=nil;
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_ifPresent_ifAbsent_",
smalltalk.method({
selector: "at:ifPresent:ifAbsent:",
fn: function (aKey,aBlock,anotherBlock){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_includesKey_",[aKey]);
-$1=smalltalk.send($2,"_ifTrue_ifFalse_",[(function(){
-return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_at_",[aKey])]);
-}),anotherBlock]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._includesKey_(aKey);
+$1=_st($2)._ifTrue_ifFalse_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(aBlock)._value_(_st(self)._at_(aKey));
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}),anotherBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:ifPresent:ifAbsent:",{aKey:aKey,aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_at_put_",
smalltalk.method({
selector: "at:put:",
fn: function (aKey,aValue){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_basicAt_put_",[aKey,aValue]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._basicAt_put_(aKey,aValue);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_collect_",
smalltalk.method({
selector: "collect:",
fn: function (aBlock){
var self=this;
var newDict;
-newDict=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
-return smalltalk.send(newDict,"_at_put_",[key,smalltalk.send(aBlock,"_value_",[value])]);
-})]);
-return newDict;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+newDict=_st(_st(self)._class())._new();
+_st(self)._keysAndValuesDo_((function(key,value){
+return smalltalk.withContext(function($ctx2) {
return _st(newDict)._at_put_(key,_st(aBlock)._value_(value));
+}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})}));
+$1=newDict;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock,newDict:newDict}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_copyFrom_to_",
smalltalk.method({
selector: "copyFrom:to:",
fn: function (anIndex,anotherIndex){
var self=this;
-smalltalk.send(self,"_shouldNotImplement",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._shouldNotImplement();
+return self}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_deepCopy",
smalltalk.method({
selector: "deepCopy",
fn: function (){
var self=this;
var copy;
-copy=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_associationsDo_",[(function(each){
-return smalltalk.send(copy,"_at_put_",[smalltalk.send(each,"_key",[]),smalltalk.send(smalltalk.send(each,"_value",[]),"_deepCopy",[])]);
-})]);
-return copy;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+copy=_st(_st(self)._class())._new();
+_st(self)._associationsDo_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(copy)._at_put_(_st(each)._key(),_st(_st(each)._value())._deepCopy());
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=copy;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"deepCopy",{copy:copy}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_detect_ifNone_",
smalltalk.method({
selector: "detect:ifNone:",
fn: function (aBlock,anotherBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_values",[]),"_detect_ifNone_",[aBlock,anotherBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._values())._detect_ifNone_(aBlock,anotherBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-smalltalk.send(smalltalk.send(self,"_values",[]),"_do_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(_st(self)._values())._do_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_includes_",
smalltalk.method({
selector: "includes:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_values",[]),"_includes_",[anObject]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._values())._includes_(anObject);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_includesKey_",
smalltalk.method({
selector: "includesKey:",
fn: function (aKey){
var self=this;
-return self.hasOwnProperty(aKey);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.hasOwnProperty(aKey);
+return self}, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_keys",
smalltalk.method({
selector: "keys",
fn: function (){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
if ('function'===typeof Object.keys) return Object.keys(self);
var keys = [];
for(var i in self) {
if(self.hasOwnProperty(i)) {
keys.push(i);
}
};
return keys;
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"keys",{}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_keysAndValuesDo_",
smalltalk.method({
selector: "keysAndValuesDo:",
fn: function (aBlock){
var self=this;
-smalltalk.send(self,"_associationsDo_",[(function(each){
-return smalltalk.send(aBlock,"_value_value_",[smalltalk.send(each,"_key",[]),smalltalk.send(each,"_value",[])]);
-})]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._associationsDo_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(aBlock)._value_value_(_st(each)._key(),_st(each)._value());
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+return self}, function($ctx1) {$ctx1.fill(self,"keysAndValuesDo:",{aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(aStream){
-smalltalk.send(aStream,"_nextPutAll_",[smalltalk.send(smalltalk.send("a ","__comma",[smalltalk.send(smalltalk.send(self,"_class",[]),"_name",[])]),"__comma",["("])]);
-smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_separatedBy_",[(function(each){
-return smalltalk.send(each,"_storeOn_",[aStream]);
-}),(function(){
-return smalltalk.send(aStream,"_nextPutAll_",[" , "]);
-})]);
-return smalltalk.send(aStream,"_nextPutAll_",[")"]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.String || String))._streamContents_((function(aStream){
+return smalltalk.withContext(function($ctx2) {
_st(aStream)._nextPutAll_(_st(_st("a ").__comma(_st(_st(self)._class())._name())).__comma("("));
+_st(_st(self)._associations())._do_separatedBy_((function(each){
+return smalltalk.withContext(function($ctx3) {
return _st(each)._storeOn_(aStream);
+}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx3) {
return _st(aStream)._nextPutAll_(" , ");
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+return _st(aStream)._nextPutAll_(")");
+}, function($ctx2) {$ctx2.fillBlock({aStream:aStream},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_remove_ifAbsent_",
smalltalk.method({
selector: "remove:ifAbsent:",
fn: function (aKey,aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_removeKey_ifAbsent_",[aKey,aBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._removeKey_ifAbsent_(aKey,aBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_removeKey_",
smalltalk.method({
selector: "removeKey:",
fn: function (aKey){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_remove_",[aKey]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._remove_(aKey);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"removeKey:",{aKey:aKey}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_removeKey_ifAbsent_",
smalltalk.method({
selector: "removeKey:ifAbsent:",
fn: function (aKey,aBlock){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_includesKey_",[aKey]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._includesKey_(aKey);
if(smalltalk.assert($2)){
-$1=smalltalk.send(self,"_basicDelete_",[aKey]);
+$1=_st(self)._basicDelete_(aKey);
} else {
-$1=smalltalk.send(aBlock,"_value",[]);
+$1=_st(aBlock)._value();
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_select_",
smalltalk.method({
selector: "select:",
fn: function (aBlock){
var self=this;
-var $1;
var newDict;
-newDict=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_keysAndValuesDo_",[(function(key,value){
-$1=smalltalk.send(aBlock,"_value_",[value]);
-if(smalltalk.assert($1)){
-return smalltalk.send(newDict,"_at_put_",[key,value]);
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+newDict=_st(_st(self)._class())._new();
+$1=self;
+$2=(function(key,value){
+return smalltalk.withContext(function($ctx2) {
$3=_st(aBlock)._value_(value);
+if(smalltalk.assert($3)){
+return _st(newDict)._at_put_(key,value);
};
-})]);
-return newDict;
-}
+}, function($ctx2) {$ctx2.fillBlock({key:key,value:value},$ctx1)})});
+_st($1)._keysAndValuesDo_($2);
+$4=newDict;
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,newDict:newDict}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_shallowCopy",
smalltalk.method({
selector: "shallowCopy",
fn: function (){
var self=this;
var copy;
-copy=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_associationsDo_",[(function(each){
-return smalltalk.send(copy,"_at_put_",[smalltalk.send(each,"_key",[]),smalltalk.send(each,"_value",[])]);
-})]);
-return copy;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+copy=_st(_st(self)._class())._new();
+_st(self)._associationsDo_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(copy)._at_put_(_st(each)._key(),_st(each)._value());
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=copy;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{copy:copy}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_keys",[]),"_size",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._keys())._size();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_storeOn_",
smalltalk.method({
selector: "storeOn:",
fn: function (aStream){
var self=this;
-smalltalk.send(aStream,"_nextPutAll_",["#{"]);
-smalltalk.send(smalltalk.send(self,"_associations",[]),"_do_separatedBy_",[(function(each){
-return smalltalk.send(each,"_storeOn_",[aStream]);
-}),(function(){
-return smalltalk.send(aStream,"_nextPutAll_",[". "]);
-})]);
-smalltalk.send(aStream,"_nextPutAll_",["}"]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(aStream)._nextPutAll_("#{");
+_st(_st(self)._associations())._do_separatedBy_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(each)._storeOn_(aStream);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(aStream)._nextPutAll_(". ");
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
+_st(aStream)._nextPutAll_("}");
+return self}, function($ctx1) {$ctx1.fill(self,"storeOn:",{aStream:aStream}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
"_values",
smalltalk.method({
selector: "values",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_keys",[]),"_collect_",[(function(each){
-return smalltalk.send(self,"_at_",[each]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._keys())._collect_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._at_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"values",{}, smalltalk.HashedCollection)})}
}),
smalltalk.HashedCollection);
smalltalk.addMethod(
@@ -1205,16 +1237,18 @@
smalltalk.method({
selector: "fromPairs:",
fn: function (aCollection){
var self=this;
var dict;
-dict=smalltalk.send(self,"_new",[]);
-smalltalk.send(aCollection,"_do_",[(function(each){
-return smalltalk.send(dict,"_add_",[each]);
-})]);
-return dict;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+dict=_st(self)._new();
+_st(aCollection)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(dict)._add_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=dict;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"fromPairs:",{aCollection:aCollection,dict:dict}, smalltalk.HashedCollection.klass)})}
}),
smalltalk.HashedCollection.klass);
smalltalk.addClass('Dictionary', smalltalk.HashedCollection, ['keys', 'values'], 'Kernel-Collections');
@@ -1222,175 +1256,172 @@
"_asHashedCollection",
smalltalk.method({
selector: "asHashedCollection",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.HashedCollection || HashedCollection),"_fromPairs_",[smalltalk.send(self,"_associations",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.HashedCollection || HashedCollection))._fromPairs_(_st(self)._associations());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asHashedCollection",{}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_asJSON",
smalltalk.method({
selector: "asJSON",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asHashedCollection",[]),"_asJSON",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asHashedCollection())._asJSON();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (aKey,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
var index;
for(var i=0;i<self['@keys'].length;i++){
if(self['@keys'][i].__eq(aKey)) {index = i;}
};
if(typeof index === 'undefined') {
return aBlock();
} else {
return self['@values'][index];
}
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_at_put_",
smalltalk.method({
selector: "at:put:",
fn: function (aKey,aValue){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
var index = self['@keys'].indexOf(aKey);
if(index === -1) {
self['@values'].push(aValue);
self['@keys'].push(aKey);
} else {
self['@values'][index] = aValue;
};
return aValue;
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{aKey:aKey,aValue:aValue}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_includesKey_",
smalltalk.method({
selector: "includesKey:",
fn: function (aKey){
var self=this;
-var $1;
-$1=smalltalk.send(self["@keys"],"_includes_",[aKey]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@keys"])._includes_(aKey);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"includesKey:",{aKey:aKey}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_initialize",
smalltalk.method({
selector: "initialize",
fn: function (){
var self=this;
-smalltalk.send(self,"_initialize",[],smalltalk.HashedCollection);
+return smalltalk.withContext(function($ctx1) {
smalltalk.HashedCollection.fn.prototype._initialize.apply(_st(self), []);
self["@keys"]=[];
self["@values"]=[];
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_keyAtValue_",
smalltalk.method({
selector: "keyAtValue:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_associations",[]),"_detect_ifNone_",[(function(k,v){
-return smalltalk.send(v,"__eq_eq",[anObject]);
-}),(function(){
-return smalltalk.send(self,"_error_",["Not found"]);
-})]),"_key",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._associations())._detect_ifNone_((function(k,v){
+return smalltalk.withContext(function($ctx2) {
return _st(v).__eq_eq(anObject);
+}, function($ctx2) {$ctx2.fillBlock({k:k,v:v},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._error_("Not found");
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._key();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"keyAtValue:",{anObject:anObject}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_keys",
smalltalk.method({
selector: "keys",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self["@keys"],"_copy",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@keys"])._copy();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"keys",{}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_removeKey_ifAbsent_",
smalltalk.method({
selector: "removeKey:ifAbsent:",
fn: function (aKey,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
var index = self['@keys'].indexOf(aKey);
if(index === -1) {
return aBlock()
} else {
var value;
self['@keys'].splice(index, 1);
value = self['@values'].splice(index, 1);
return value[0];
};
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"removeKey:ifAbsent:",{aKey:aKey,aBlock:aBlock}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_valueAt_",
smalltalk.method({
selector: "valueAt:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_associationsDo_",[(2)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._associationsDo_((2));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"valueAt:",{anObject:anObject}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
smalltalk.addMethod(
"_values",
smalltalk.method({
selector: "values",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self["@values"],"_copy",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@values"])._copy();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"values",{}, smalltalk.Dictionary)})}
}),
smalltalk.Dictionary);
@@ -1399,342 +1430,361 @@
"__eq",
smalltalk.method({
selector: "=",
fn: function (aCollection){
var self=this;
-var $1,$2;
+return smalltalk.withContext(function($ctx1) {
var $1,$2,$4,$3;
var $early={};
try {
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aCollection,"_class",[])]),"_and_",[(function(){
-return smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[smalltalk.send(aCollection,"_size",[])]);
-})]);
+$1=_st(_st(_st(self)._class()).__eq(_st(aCollection)._class()))._and_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(_st(self)._size()).__eq(_st(aCollection)._size());
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
if(! smalltalk.assert($1)){
return false;
};
-smalltalk.send(self,"_withIndexDo_",[(function(each,i){
-$2=smalltalk.send(smalltalk.send(aCollection,"_at_",[i]),"__eq",[each]);
-if(! smalltalk.assert($2)){
+$2=self;
+$3=(function(each,i){
+return smalltalk.withContext(function($ctx2) {
$4=_st(_st(aCollection)._at_(i)).__eq(each);
+if(! smalltalk.assert($4)){
throw $early=[false];
};
-})]);
+}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})});
+_st($2)._withIndexDo_($3);
return true;
}
catch(e) {if(e===$early)return e[0]; throw e}
-}
+}, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_addLast_",
smalltalk.method({
selector: "addLast:",
fn: function (anObject){
var self=this;
-smalltalk.send(self,"_add_",[anObject]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._add_(anObject);
+return self}, function($ctx1) {$ctx1.fill(self,"addLast:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_allButFirst",
smalltalk.method({
selector: "allButFirst",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_copyFrom_to_",[(2),smalltalk.send(self,"_size",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._copyFrom_to_((2),_st(self)._size());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"allButFirst",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_allButLast",
smalltalk.method({
selector: "allButLast",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_copyFrom_to_",[(1),smalltalk.send(smalltalk.send(self,"_size",[]),"__minus",[(1)])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._copyFrom_to_((1),_st(_st(self)._size()).__minus((1)));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"allButLast",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_at_",
smalltalk.method({
selector: "at:",
fn: function (anIndex){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_ifAbsent_",[anIndex,(function(){
-return smalltalk.send(self,"_errorNotFound",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_ifAbsent_(anIndex,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._errorNotFound();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:",{anIndex:anIndex}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (anIndex,aBlock){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_at_put_",
smalltalk.method({
selector: "at:put:",
fn: function (anIndex,anObject){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_atRandom",
smalltalk.method({
selector: "atRandom",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[smalltalk.send(smalltalk.send(self,"_size",[]),"_atRandom",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_(_st(_st(self)._size())._atRandom());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"atRandom",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_copyFrom_to_",
smalltalk.method({
selector: "copyFrom:to:",
fn: function (anIndex,anotherIndex){
var self=this;
-var range;
-var newCollection;
-range=smalltalk.send(anIndex,"_to_",[anotherIndex]);
-newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(range,"_size",[])]);
-smalltalk.send(range,"_withIndexDo_",[(function(each,i){
-return smalltalk.send(newCollection,"_at_put_",[i,smalltalk.send(self,"_at_",[each])]);
-})]);
-return newCollection;
-}
+var range,newCollection;
+return smalltalk.withContext(function($ctx1) {
var $1;
+range=_st(anIndex)._to_(anotherIndex);
+newCollection=_st(_st(self)._class())._new_(_st(range)._size());
+_st(range)._withIndexDo_((function(each,i){
+return smalltalk.withContext(function($ctx2) {
return _st(newCollection)._at_put_(i,_st(self)._at_(each));
+}, function($ctx2) {$ctx2.fillBlock({each:each,i:i},$ctx1)})}));
+$1=newCollection;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex,range:range,newCollection:newCollection}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_deepCopy",
smalltalk.method({
selector: "deepCopy",
fn: function (){
var self=this;
var newCollection;
-newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(self,"_size",[])]);
-smalltalk.send(self,"_withIndexDo_",[(function(each,index){
-return smalltalk.send(newCollection,"_at_put_",[index,smalltalk.send(each,"_deepCopy",[])]);
-})]);
-return newCollection;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+newCollection=_st(_st(self)._class())._new_(_st(self)._size());
+_st(self)._withIndexDo_((function(each,index){
+return smalltalk.withContext(function($ctx2) {
return _st(newCollection)._at_put_(index,_st(each)._deepCopy());
+}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
+$1=newCollection;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"deepCopy",{newCollection:newCollection}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_first",
smalltalk.method({
selector: "first",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[(1)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_((1));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"first",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_first_",
smalltalk.method({
selector: "first:",
fn: function (n){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_copyFrom_to_",[(1),n]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._copyFrom_to_((1),n);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"first:",{n:n}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_fourth",
smalltalk.method({
selector: "fourth",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[(4)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_((4));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"fourth",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
+"_includes_",
+smalltalk.method({
+selector: "includes:",
+fn: function (anObject){
+var self=this;
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._indexOf_ifAbsent_(anObject,(function(){
+return smalltalk.withContext(function($ctx2) {
return nil;
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})))._notNil();
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
+}),
+smalltalk.SequenceableCollection);
+
+smalltalk.addMethod(
"_indexOf_",
smalltalk.method({
selector: "indexOf:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_indexOf_ifAbsent_",[anObject,(function(){
-return smalltalk.send(self,"_errorNotFound",[]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._indexOf_ifAbsent_(anObject,(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._errorNotFound();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"indexOf:",{anObject:anObject}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_indexOf_ifAbsent_",
smalltalk.method({
selector: "indexOf:ifAbsent:",
fn: function (anObject,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++) {
- if(smalltalk.send(self[i], '__eq', [anObject])) {return i+1}
+ if(self[i].__eq(anObject)) {return i+1}
};
return aBlock();
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"indexOf:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_indexOf_startingAt_",
smalltalk.method({
selector: "indexOf:startingAt:",
fn: function (anObject,start){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_indexOf_startingAt_ifAbsent_",[anObject,start,(function(){
-return (0);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._indexOf_startingAt_ifAbsent_(anObject,start,(function(){
+return smalltalk.withContext(function($ctx2) {
return (0);
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:",{anObject:anObject,start:start}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_indexOf_startingAt_ifAbsent_",
smalltalk.method({
selector: "indexOf:startingAt:ifAbsent:",
fn: function (anObject,start,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
for(var i=start-1;i<self.length;i++){
if(self[i].__eq(anObject)) {return i+1}
}
return aBlock();
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"indexOf:startingAt:ifAbsent:",{anObject:anObject,start:start,aBlock:aBlock}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_last",
smalltalk.method({
selector: "last",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[smalltalk.send(self,"_size",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_(_st(self)._size());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"last",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_removeLast",
smalltalk.method({
selector: "removeLast",
fn: function (){
var self=this;
-smalltalk.send(self,"_remove_",[smalltalk.send(self,"_last",[])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._remove_(_st(self)._last());
+return self}, function($ctx1) {$ctx1.fill(self,"removeLast",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_reversed",
smalltalk.method({
selector: "reversed",
fn: function (){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_second",
smalltalk.method({
selector: "second",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[(2)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_((2));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"second",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_shallowCopy",
smalltalk.method({
selector: "shallowCopy",
fn: function (){
var self=this;
var newCollection;
-newCollection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new_",[smalltalk.send(self,"_size",[])]);
-smalltalk.send(self,"_withIndexDo_",[(function(each,index){
-return smalltalk.send(newCollection,"_at_put_",[index,each]);
-})]);
-return newCollection;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+newCollection=_st(_st(self)._class())._new_(_st(self)._size());
+_st(self)._withIndexDo_((function(each,index){
+return smalltalk.withContext(function($ctx2) {
return _st(newCollection)._at_put_(index,each);
+}, function($ctx2) {$ctx2.fillBlock({each:each,index:index},$ctx1)})}));
+$1=newCollection;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{newCollection:newCollection}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_third",
smalltalk.method({
selector: "third",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_at_",[(3)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._at_((3));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"third",{}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
smalltalk.addMethod(
"_withIndexDo_",
smalltalk.method({
selector: "withIndexDo:",
fn: function (aBlock){
var self=this;
-for(var i=0;i<self.length;i++){aBlock(self[i], i+1);};
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++){aBlock(self[i], i+1);};
+return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.SequenceableCollection)})}
}),
smalltalk.SequenceableCollection);
@@ -1743,262 +1793,253 @@
"_add_",
smalltalk.method({
selector: "add:",
fn: function (anObject){
var self=this;
-self.push(anObject); return anObject;;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
self.push(anObject); return anObject;;
+return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_asJavascript",
smalltalk.method({
selector: "asJavascript",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send("[","__comma",[smalltalk.send(smalltalk.send(self,"_collect_",[(function(each){
-return smalltalk.send(each,"_asJavascript",[]);
-})]),"_join_",[", "])]),"__comma",["]"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st("[").__comma(_st(_st(self)._collect_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(each)._asJavascript();
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})))._join_(", "))).__comma("]");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (anIndex,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
if((anIndex < 1) || (self.length < anIndex)) {return aBlock()};
return self[anIndex - 1];
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_at_put_",
smalltalk.method({
selector: "at:put:",
fn: function (anIndex,anObject){
var self=this;
-return self[anIndex - 1] = anObject;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self[anIndex - 1] = anObject;
+return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_join_",
smalltalk.method({
selector: "join:",
fn: function (aString){
var self=this;
-return self.join(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.join(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"join:",{aString:aString}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_remove_ifAbsent_",
smalltalk.method({
selector: "remove:ifAbsent:",
fn: function (anObject,aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++) {
if(self[i] == anObject) {
self.splice(i,1);
return self;
}
- }
+ };
+ aBlock._value();
;
-;
-smalltalk.send(aBlock,"_value",[]);
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"remove:ifAbsent:",{anObject:anObject,aBlock:aBlock}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_removeFrom_to_",
smalltalk.method({
selector: "removeFrom:to:",
fn: function (aNumber,anotherNumber){
var self=this;
-self.splice(aNumber - 1,anotherNumber - 1);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
self.splice(aNumber - 1,anotherNumber - 1);
+return self}, function($ctx1) {$ctx1.fill(self,"removeFrom:to:",{aNumber:aNumber,anotherNumber:anotherNumber}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_reversed",
smalltalk.method({
selector: "reversed",
fn: function (){
var self=this;
-return self._copy().reverse();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self._copy().reverse();
+return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-return self.length;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.length;
+return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_sort",
smalltalk.method({
selector: "sort",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_basicPerform_",["sort"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._basicPerform_("sort");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"sort",{}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_sort_",
smalltalk.method({
selector: "sort:",
fn: function (aBlock){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
return self.sort(function(a, b) {
if(aBlock(a,b)) {return -1} else {return 1}
})
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"sort:",{aBlock:aBlock}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_sorted",
smalltalk.method({
selector: "sorted",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_copy",[]),"_sort",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._copy())._sort();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"sorted",{}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_sorted_",
smalltalk.method({
selector: "sorted:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_copy",[]),"_sort_",[aBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._copy())._sort_(aBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"sorted:",{aBlock:aBlock}, smalltalk.Array)})}
}),
smalltalk.Array);
smalltalk.addMethod(
"_new_",
smalltalk.method({
selector: "new:",
fn: function (anInteger){
var self=this;
-return new Array(anInteger);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return new Array(anInteger);
+return self}, function($ctx1) {$ctx1.fill(self,"new:",{anInteger:anInteger}, smalltalk.Array.klass)})}
}),
smalltalk.Array.klass);
smalltalk.addMethod(
"_with_",
smalltalk.method({
selector: "with:",
fn: function (anObject){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new_",[(1)]);
-smalltalk.send($2,"_at_put_",[(1),anObject]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new_((1));
+_st($2)._at_put_((1),anObject);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:",{anObject:anObject}, smalltalk.Array.klass)})}
}),
smalltalk.Array.klass);
smalltalk.addMethod(
"_with_with_",
smalltalk.method({
selector: "with:with:",
fn: function (anObject,anObject2){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new_",[(2)]);
-smalltalk.send($2,"_at_put_",[(1),anObject]);
-smalltalk.send($2,"_at_put_",[(2),anObject2]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new_((2));
+_st($2)._at_put_((1),anObject);
+_st($2)._at_put_((2),anObject2);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:with:",{anObject:anObject,anObject2:anObject2}, smalltalk.Array.klass)})}
}),
smalltalk.Array.klass);
smalltalk.addMethod(
"_with_with_with_",
smalltalk.method({
selector: "with:with:with:",
fn: function (anObject,anObject2,anObject3){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new_",[(3)]);
-smalltalk.send($2,"_at_put_",[(1),anObject]);
-smalltalk.send($2,"_at_put_",[(2),anObject2]);
-smalltalk.send($2,"_at_put_",[(3),anObject3]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new_((3));
+_st($2)._at_put_((1),anObject);
+_st($2)._at_put_((2),anObject2);
+_st($2)._at_put_((3),anObject3);
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"with:with:with:",{anObject:anObject,anObject2:anObject2,anObject3:anObject3}, smalltalk.Array.klass)})}
}),
smalltalk.Array.klass);
smalltalk.addMethod(
"_withAll_",
smalltalk.method({
selector: "withAll:",
fn: function (aCollection){
var self=this;
-var instance;
-var index;
+var instance,index;
+return smalltalk.withContext(function($ctx1) {
var $1;
index=(1);
-instance=smalltalk.send(self,"_new_",[smalltalk.send(aCollection,"_size",[])]);
-smalltalk.send(aCollection,"_do_",[(function(each){
-smalltalk.send(instance,"_at_put_",[index,each]);
-index=smalltalk.send(index,"__plus",[(1)]);
+instance=_st(self)._new_(_st(aCollection)._size());
+_st(aCollection)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
_st(instance)._at_put_(index,each);
+index=_st(index).__plus((1));
return index;
-})]);
-return instance;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+$1=instance;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"withAll:",{aCollection:aCollection,instance:instance,index:index}, smalltalk.Array.klass)})}
}),
smalltalk.Array.klass);
smalltalk.addClass('CharacterArray', smalltalk.SequenceableCollection, [], 'Kernel-Collections');
@@ -2006,148 +2047,148 @@
"__comma",
smalltalk.method({
selector: ",",
fn: function (aString){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__comma",[smalltalk.send(aString,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString()).__comma(_st(aString)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,",",{aString:aString}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_add_",
smalltalk.method({
selector: "add:",
fn: function (anObject){
var self=this;
-smalltalk.send(self,"_errorReadOnly",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._errorReadOnly();
+return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_asLowercase",
smalltalk.method({
selector: "asLowercase",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_asLowercase",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._asLowercase());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asLowercase",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_asNumber",
smalltalk.method({
selector: "asNumber",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asNumber",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._asNumber();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asNumber",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_asString",
smalltalk.method({
selector: "asString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_subclassResponsibility",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._subclassResponsibility();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_asSymbol",
smalltalk.method({
selector: "asSymbol",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_subclassResponsibility",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._subclassResponsibility();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_asUppercase",
smalltalk.method({
selector: "asUppercase",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_asUppercase",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._asUppercase());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asUppercase",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_at_put_",
smalltalk.method({
selector: "at:put:",
fn: function (anIndex,anObject){
var self=this;
-smalltalk.send(self,"_errorReadOnly",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._errorReadOnly();
+return self}, function($ctx1) {$ctx1.fill(self,"at:put:",{anIndex:anIndex,anObject:anObject}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_errorReadOnly",
smalltalk.method({
selector: "errorReadOnly",
fn: function (){
var self=this;
-smalltalk.send(self,"_error_",["Object is read-only"]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._error_("Object is read-only");
+return self}, function($ctx1) {$ctx1.fill(self,"errorReadOnly",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_printString",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._printString();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_remove_",
smalltalk.method({
selector: "remove:",
fn: function (anObject){
var self=this;
-smalltalk.send(self,"_errorReadOnly",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._errorReadOnly();
+return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.CharacterArray)})}
}),
smalltalk.CharacterArray);
smalltalk.addMethod(
"_fromString_",
smalltalk.method({
selector: "fromString:",
fn: function (aString){
var self=this;
-smalltalk.send(self,"_subclassResponsibility",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._subclassResponsibility();
+return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.CharacterArray.klass)})}
}),
smalltalk.CharacterArray.klass);
smalltalk.addClass('String', smalltalk.CharacterArray, [], 'Kernel-Collections');
@@ -2155,801 +2196,779 @@
"__comma",
smalltalk.method({
selector: ",",
fn: function (aString){
var self=this;
-return self + aString;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self + aString;
+return self}, function($ctx1) {$ctx1.fill(self,",",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__lt",
smalltalk.method({
selector: "<",
fn: function (aString){
var self=this;
-return String(self) < aString._asString();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String(self) < aString._asString();
+return self}, function($ctx1) {$ctx1.fill(self,"<",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__lt_eq",
smalltalk.method({
selector: "<=",
fn: function (aString){
var self=this;
-return String(self) <= aString._asString();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String(self) <= aString._asString();
+return self}, function($ctx1) {$ctx1.fill(self,"<=",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__eq",
smalltalk.method({
selector: "=",
fn: function (aString){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(aString,"_class",[]),"__eq",[smalltalk.send(self,"_class",[])]);
-if(! smalltalk.assert($1)){
-return false;
-};
-return String(self) === String(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
+ if(! aString._isString || ! aString._isString()) {
+ return false;
+ }
+ return String(self) === String(aString)
+ ;
+return self}, function($ctx1) {$ctx1.fill(self,"=",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__eq_eq",
smalltalk.method({
selector: "==",
fn: function (aString){
var self=this;
-var $1;
-$1=smalltalk.send(self,"__eq",[aString]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self).__eq(aString);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"==",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__gt",
smalltalk.method({
selector: ">",
fn: function (aString){
var self=this;
-return String(self) > aString._asString();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String(self) > aString._asString();
+return self}, function($ctx1) {$ctx1.fill(self,">",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"__gt_eq",
smalltalk.method({
selector: ">=",
fn: function (aString){
var self=this;
-return String(self) >= aString._asString();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String(self) >= aString._asString();
+return self}, function($ctx1) {$ctx1.fill(self,">=",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asJSON",
smalltalk.method({
selector: "asJSON",
fn: function (){
var self=this;
-return self;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asJavaScriptSelector",
smalltalk.method({
selector: "asJavaScriptSelector",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asSelector",[]),"_replace_with_",["^_",""]),"_replace_with_",["_.*",""]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._asSelector())._replace_with_("^_",""))._replace_with_("_.*","");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJavaScriptSelector",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asJavascript",
smalltalk.method({
selector: "asJavascript",
fn: function (){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
if(self.search(/^[a-zA-Z0-9_:.$ ]*$/) == -1)
return "\"" + self.replace(/[\x00-\x1f"\\\x7f-\x9f]/g, function(ch){var c=ch.charCodeAt(0);return "\\x"+("0"+c.toString(16)).slice(-2)}) + "\"";
else
return "\"" + self + "\"";
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asLowercase",
smalltalk.method({
selector: "asLowercase",
fn: function (){
var self=this;
-return self.toLowerCase();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.toLowerCase();
+return self}, function($ctx1) {$ctx1.fill(self,"asLowercase",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asNumber",
smalltalk.method({
selector: "asNumber",
fn: function (){
var self=this;
-return Number(self);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return Number(self);
+return self}, function($ctx1) {$ctx1.fill(self,"asNumber",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
+"_asRegexp",
+smalltalk.method({
+selector: "asRegexp",
+fn: function (){
+var self=this;
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.RegularExpression || RegularExpression))._fromString_(self);
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asRegexp",{}, smalltalk.String)})}
+}),
+smalltalk.String);
+
+smalltalk.addMethod(
"_asSelector",
smalltalk.method({
selector: "asSelector",
fn: function (){
var self=this;
-var selector;
-selector=smalltalk.send("_","__comma",[self]);
-selector=smalltalk.send(selector,"_replace_with_",[":","_"]);
-selector=smalltalk.send(selector,"_replace_with_",["[+]","_plus"]);
-selector=smalltalk.send(selector,"_replace_with_",["-","_minus"]);
-selector=smalltalk.send(selector,"_replace_with_",["[*]","_star"]);
-selector=smalltalk.send(selector,"_replace_with_",["[/]","_slash"]);
-selector=smalltalk.send(selector,"_replace_with_",[">","_gt"]);
-selector=smalltalk.send(selector,"_replace_with_",["<","_lt"]);
-selector=smalltalk.send(selector,"_replace_with_",["=","_eq"]);
-selector=smalltalk.send(selector,"_replace_with_",[",","_comma"]);
-selector=smalltalk.send(selector,"_replace_with_",["[@]","_at"]);
-return selector;
-}
+return smalltalk.withContext(function($ctx1) {
return smalltalk.selector(self);
+return self}, function($ctx1) {$ctx1.fill(self,"asSelector",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asString",
smalltalk.method({
selector: "asString",
fn: function (){
var self=this;
-return self;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asSymbol",
smalltalk.method({
selector: "asSymbol",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.Symbol || Symbol),"_lookup_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.Symbol || Symbol))._lookup_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asUppercase",
smalltalk.method({
selector: "asUppercase",
fn: function (){
var self=this;
-return self.toUpperCase();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.toUpperCase();
+return self}, function($ctx1) {$ctx1.fill(self,"asUppercase",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_asciiValue",
smalltalk.method({
selector: "asciiValue",
fn: function (){
var self=this;
-return self.charCodeAt(0);;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.charCodeAt(0);;
+return self}, function($ctx1) {$ctx1.fill(self,"asciiValue",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (anIndex,aBlock){
var self=this;
-return String(self).charAt(anIndex - 1) || aBlock();
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String(self).charAt(anIndex - 1) || aBlock();
+return self}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_copyFrom_to_",
smalltalk.method({
selector: "copyFrom:to:",
fn: function (anIndex,anotherIndex){
var self=this;
-return self.substring(anIndex - 1, anotherIndex);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.substring(anIndex - 1, anotherIndex);
+return self}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_deepCopy",
smalltalk.method({
selector: "deepCopy",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_shallowCopy",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._shallowCopy();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-for(var i=0;i<self.length;i++){aBlock(self.charAt(i));};
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++){aBlock(self.charAt(i));};
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_escaped",
smalltalk.method({
selector: "escaped",
fn: function (){
var self=this;
-return escape(self);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return escape(self);
+return self}, function($ctx1) {$ctx1.fill(self,"escaped",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_includesSubString_",
smalltalk.method({
selector: "includesSubString:",
fn: function (subString){
var self=this;
- return self.indexOf(subString) != -1 ;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.indexOf(subString) != -1 ;
+return self}, function($ctx1) {$ctx1.fill(self,"includesSubString:",{subString:subString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_isString",
smalltalk.method({
selector: "isString",
fn: function (){
var self=this;
-return true;
-}
+return smalltalk.withContext(function($ctx1) {
return true;
+}, function($ctx1) {$ctx1.fill(self,"isString",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_join_",
smalltalk.method({
selector: "join:",
fn: function (aCollection){
var self=this;
-var $1;
-$1=smalltalk.send((smalltalk.String || String),"_streamContents_",[(function(stream){
-return smalltalk.send(aCollection,"_do_separatedBy_",[(function(each){
-return smalltalk.send(stream,"_nextPutAll_",[smalltalk.send(each,"_asString",[])]);
-}),(function(){
-return smalltalk.send(stream,"_nextPutAll_",[self]);
-})]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st((smalltalk.String || String))._streamContents_((function(stream){
+return smalltalk.withContext(function($ctx2) {
return _st(aCollection)._do_separatedBy_((function(each){
+return smalltalk.withContext(function($ctx3) {
return _st(stream)._nextPutAll_(_st(each)._asString());
+}, function($ctx3) {$ctx3.fillBlock({each:each},$ctx1)})}),(function(){
+return smalltalk.withContext(function($ctx3) {
return _st(stream)._nextPutAll_(self);
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+}, function($ctx2) {$ctx2.fillBlock({stream:stream},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"join:",{aCollection:aCollection}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_lineIndicesDo_",
smalltalk.method({
selector: "lineIndicesDo:",
fn: function (aBlock){
var self=this;
-var $1,$2,$3;
+var cr,lf,start,sz,nextLF,nextCR;
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$4,$5,$6,$8,$7,$2;
var $early={};
try {
-var cr;
-var lf;
-var start;
-var sz;
-var nextLF;
-var nextCR;
start=(1);
-sz=smalltalk.send(self,"_size",[]);
-cr=smalltalk.send((smalltalk.String || String),"_cr",[]);
-nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,(1)]);
-lf=smalltalk.send((smalltalk.String || String),"_lf",[]);
-nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,(1)]);
-smalltalk.send((function(){
-return smalltalk.send(start,"__lt_eq",[sz]);
-}),"_whileTrue_",[(function(){
-$1=smalltalk.send(smalltalk.send(nextLF,"__eq",[(0)]),"_and_",[(function(){
-return smalltalk.send(nextCR,"__eq",[(0)]);
-})]);
-if(smalltalk.assert($1)){
-smalltalk.send(aBlock,"_value_value_value_",[start,sz,sz]);
-throw $early=[self];
+sz=_st(self)._size();
+cr=_st((smalltalk.String || String))._cr();
+nextCR=_st(self)._indexOf_startingAt_(cr,(1));
+lf=_st((smalltalk.String || String))._lf();
+nextLF=_st(self)._indexOf_startingAt_(lf,(1));
+$1=(function(){
+return smalltalk.withContext(function($ctx2) {
return _st(start).__lt_eq(sz);
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
+$2=(function(){
+return smalltalk.withContext(function($ctx2) {
$3=_st(_st(nextLF).__eq((0)))._and_((function(){
+return smalltalk.withContext(function($ctx3) {
return _st(nextCR).__eq((0));
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+if(smalltalk.assert($3)){
+_st(aBlock)._value_value_value_(start,sz,sz);
+$4=self;
+throw $early=[$4];
};
-$2=smalltalk.send(smalltalk.send(nextCR,"__eq",[(0)]),"_or_",[(function(){
-return smalltalk.send(smalltalk.send((0),"__lt",[nextLF]),"_and_",[(function(){
-return smalltalk.send(nextLF,"__lt",[nextCR]);
-})]);
-})]);
-if(smalltalk.assert($2)){
-smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextLF,"__minus",[(1)]),nextLF]);
-start=smalltalk.send((1),"__plus",[nextLF]);
+$5=_st(_st(nextCR).__eq((0)))._or_((function(){
+return smalltalk.withContext(function($ctx3) {
return _st(_st((0)).__lt(nextLF))._and_((function(){
+return smalltalk.withContext(function($ctx4) {
return _st(nextLF).__lt(nextCR);
+}, function($ctx4) {$ctx4.fillBlock({},$ctx1)})}));
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}));
+$6=(function(){
+return smalltalk.withContext(function($ctx3) {
_st(aBlock)._value_value_value_(start,_st(nextLF).__minus((1)),nextLF);
+start=_st((1)).__plus(nextLF);
start;
-nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,start]);
+nextLF=_st(self)._indexOf_startingAt_(lf,start);
return nextLF;
-} else {
-$3=smalltalk.send(smalltalk.send((1),"__plus",[nextCR]),"__eq",[nextLF]);
-if(smalltalk.assert($3)){
-smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextCR,"__minus",[(1)]),nextLF]);
-start=smalltalk.send((1),"__plus",[nextLF]);
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
+$7=(function(){
+return smalltalk.withContext(function($ctx3) {
$8=_st(_st((1)).__plus(nextCR)).__eq(nextLF);
+if(smalltalk.assert($8)){
+_st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextLF);
+start=_st((1)).__plus(nextLF);
start;
-nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,start]);
+nextCR=_st(self)._indexOf_startingAt_(cr,start);
nextCR;
-nextLF=smalltalk.send(self,"_indexOf_startingAt_",[lf,start]);
+nextLF=_st(self)._indexOf_startingAt_(lf,start);
return nextLF;
} else {
-smalltalk.send(aBlock,"_value_value_value_",[start,smalltalk.send(nextCR,"__minus",[(1)]),nextCR]);
-start=smalltalk.send((1),"__plus",[nextCR]);
+_st(aBlock)._value_value_value_(start,_st(nextCR).__minus((1)),nextCR);
+start=_st((1)).__plus(nextCR);
start;
-nextCR=smalltalk.send(self,"_indexOf_startingAt_",[cr,start]);
+nextCR=_st(self)._indexOf_startingAt_(cr,start);
return nextCR;
};
-};
-})]);
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
+return _st($5)._ifTrue_ifFalse_($6,$7);
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
+_st($1)._whileTrue_($2);
return self}
catch(e) {if(e===$early)return e[0]; throw e}
-}
+}, function($ctx1) {$ctx1.fill(self,"lineIndicesDo:",{aBlock:aBlock,cr:cr,lf:lf,start:start,sz:sz,nextLF:nextLF,nextCR:nextCR}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_lineNumber_",
smalltalk.method({
selector: "lineNumber:",
fn: function (anIndex){
var self=this;
-var $1,$2;
+var lineCount;
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$4,$2;
var $early={};
try {
-var lineCount;
lineCount=(0);
-smalltalk.send(self,"_lineIndicesDo_",[(function(start,endWithoutDelimiters,end){
-lineCount=smalltalk.send(lineCount,"__plus",[(1)]);
-$1=smalltalk.send(lineCount,"__eq",[anIndex]);
-if(smalltalk.assert($1)){
-$2=smalltalk.send(self,"_copyFrom_to_",[start,endWithoutDelimiters]);
-throw $early=[$2];
+$1=self;
+$2=(function(start,endWithoutDelimiters,end){
+return smalltalk.withContext(function($ctx2) {
lineCount=_st(lineCount).__plus((1));
+$3=_st(lineCount).__eq(anIndex);
+if(smalltalk.assert($3)){
+$4=_st(self)._copyFrom_to_(start,endWithoutDelimiters);
+throw $early=[$4];
};
-})]);
+}, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})});
+_st($1)._lineIndicesDo_($2);
return nil;
}
catch(e) {if(e===$early)return e[0]; throw e}
-}
+}, function($ctx1) {$ctx1.fill(self,"lineNumber:",{anIndex:anIndex,lineCount:lineCount}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_lines",
smalltalk.method({
selector: "lines",
fn: function (){
var self=this;
var lines;
-lines=smalltalk.send((smalltalk.Array || Array),"_new",[]);
-smalltalk.send(self,"_linesDo_",[(function(aLine){
-return smalltalk.send(lines,"_add_",[aLine]);
-})]);
-return lines;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+lines=_st((smalltalk.Array || Array))._new();
+_st(self)._linesDo_((function(aLine){
+return smalltalk.withContext(function($ctx2) {
return _st(lines)._add_(aLine);
+}, function($ctx2) {$ctx2.fillBlock({aLine:aLine},$ctx1)})}));
+$1=lines;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"lines",{lines:lines}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_linesDo_",
smalltalk.method({
selector: "linesDo:",
fn: function (aBlock){
var self=this;
-smalltalk.send(self,"_lineIndicesDo_",[(function(start,endWithoutDelimiters,end){
-return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_copyFrom_to_",[start,endWithoutDelimiters])]);
-})]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._lineIndicesDo_((function(start,endWithoutDelimiters,end){
+return smalltalk.withContext(function($ctx2) {
return _st(aBlock)._value_(_st(self)._copyFrom_to_(start,endWithoutDelimiters));
+}, function($ctx2) {$ctx2.fillBlock({start:start,endWithoutDelimiters:endWithoutDelimiters,end:end},$ctx1)})}));
+return self}, function($ctx1) {$ctx1.fill(self,"linesDo:",{aBlock:aBlock}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_match_",
smalltalk.method({
selector: "match:",
fn: function (aRegexp){
var self=this;
-return self.search(aRegexp) != -1;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.search(aRegexp) != -1;
+return self}, function($ctx1) {$ctx1.fill(self,"match:",{aRegexp:aRegexp}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_matchesOf_",
smalltalk.method({
selector: "matchesOf:",
fn: function (aRegularExpression){
var self=this;
-return self.match(aRegularExpression);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.match(aRegularExpression);
+return self}, function($ctx1) {$ctx1.fill(self,"matchesOf:",{aRegularExpression:aRegularExpression}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_printNl",
smalltalk.method({
selector: "printNl",
fn: function (){
var self=this;
-console.log(self);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
console.log(self);
+return self}, function($ctx1) {$ctx1.fill(self,"printNl",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send("'","__comma",[self]),"__comma",["'"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st("'").__comma(self)).__comma("'");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_replace_with_",
smalltalk.method({
selector: "replace:with:",
fn: function (aString,anotherString){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[aString,"g"]),anotherString]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(aString,"g"),anotherString);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"replace:with:",{aString:aString,anotherString:anotherString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_replaceRegexp_with_",
smalltalk.method({
selector: "replaceRegexp:with:",
fn: function (aRegexp,aString){
var self=this;
-return self.replace(aRegexp, aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.replace(aRegexp, aString);
+return self}, function($ctx1) {$ctx1.fill(self,"replaceRegexp:with:",{aRegexp:aRegexp,aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_reversed",
smalltalk.method({
selector: "reversed",
fn: function (){
var self=this;
-return self.split("").reverse().join("");
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.split("").reverse().join("");
+return self}, function($ctx1) {$ctx1.fill(self,"reversed",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_shallowCopy",
smalltalk.method({
selector: "shallowCopy",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._class())._fromString_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-return self.length;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.length;
+return self}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_tokenize_",
smalltalk.method({
selector: "tokenize:",
fn: function (aString){
var self=this;
-return self.split(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.split(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"tokenize:",{aString:aString}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimBoth",
smalltalk.method({
selector: "trimBoth",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_trimBoth_",["\x5cs"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._trimBoth_("\x5cs");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimBoth",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimBoth_",
smalltalk.method({
selector: "trimBoth:",
fn: function (separators){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_trimLeft_",[separators]),"_trimRight_",[separators]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._trimLeft_(separators))._trimRight_(separators);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimBoth:",{separators:separators}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimLeft",
smalltalk.method({
selector: "trimLeft",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_trimLeft_",["\x5cs"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._trimLeft_("\x5cs");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimLeft",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimLeft_",
smalltalk.method({
selector: "trimLeft:",
fn: function (separators){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[smalltalk.send(smalltalk.send("^[","__comma",[separators]),"__comma",["]+"]),"g"]),""]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(_st(_st("^[").__comma(separators)).__comma("]+"),"g"),"");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimLeft:",{separators:separators}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimRight",
smalltalk.method({
selector: "trimRight",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_trimRight_",["\x5cs"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._trimRight_("\x5cs");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimRight",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_trimRight_",
smalltalk.method({
selector: "trimRight:",
fn: function (separators){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_replaceRegexp_with_",[smalltalk.send((smalltalk.RegularExpression || RegularExpression),"_fromString_flag_",[smalltalk.send(smalltalk.send("[","__comma",[separators]),"__comma",["]+$"]),"g"]),""]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._replaceRegexp_with_(_st((smalltalk.RegularExpression || RegularExpression))._fromString_flag_(_st(_st("[").__comma(separators)).__comma("]+$"),"g"),"");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"trimRight:",{separators:separators}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_unescaped",
smalltalk.method({
selector: "unescaped",
fn: function (){
var self=this;
-return unescape(self);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return unescape(self);
+return self}, function($ctx1) {$ctx1.fill(self,"unescaped",{}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_withIndexDo_",
smalltalk.method({
selector: "withIndexDo:",
fn: function (aBlock){
var self=this;
-for(var i=0;i<self.length;i++){aBlock(self.charAt(i), i+1);};
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
for(var i=0;i<self.length;i++){aBlock(self.charAt(i), i+1);};
+return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.String)})}
}),
smalltalk.String);
smalltalk.addMethod(
"_cr",
smalltalk.method({
selector: "cr",
fn: function (){
var self=this;
-return '\r';
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return '\r';
+return self}, function($ctx1) {$ctx1.fill(self,"cr",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_crlf",
smalltalk.method({
selector: "crlf",
fn: function (){
var self=this;
-return '\r\n';
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return '\r\n';
+return self}, function($ctx1) {$ctx1.fill(self,"crlf",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_fromCharCode_",
smalltalk.method({
selector: "fromCharCode:",
fn: function (anInteger){
var self=this;
-return String.fromCharCode(anInteger);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String.fromCharCode(anInteger);
+return self}, function($ctx1) {$ctx1.fill(self,"fromCharCode:",{anInteger:anInteger}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_fromString_",
smalltalk.method({
selector: "fromString:",
fn: function (aString){
var self=this;
-return new self.fn(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return new self.fn(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_lf",
smalltalk.method({
selector: "lf",
fn: function (){
var self=this;
-return '\n';
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return '\n';
+return self}, function($ctx1) {$ctx1.fill(self,"lf",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_space",
smalltalk.method({
selector: "space",
fn: function (){
var self=this;
-return ' ';
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return ' ';
+return self}, function($ctx1) {$ctx1.fill(self,"space",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_streamClass",
smalltalk.method({
selector: "streamClass",
fn: function (){
var self=this;
-return (smalltalk.StringStream || StringStream);
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=(smalltalk.StringStream || StringStream);
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"streamClass",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_streamContents_",
smalltalk.method({
selector: "streamContents:",
fn: function (blockWithArg){
var self=this;
-var $1;
var stream;
-stream=smalltalk.send(smalltalk.send(self,"_streamClass",[]),"_on_",[smalltalk.send((smalltalk.String || String),"_new",[])]);
-smalltalk.send(blockWithArg,"_value_",[stream]);
-$1=smalltalk.send(stream,"_contents",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+stream=_st(_st(self)._streamClass())._on_(_st((smalltalk.String || String))._new());
+_st(blockWithArg)._value_(stream);
+$1=_st(stream)._contents();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"streamContents:",{blockWithArg:blockWithArg,stream:stream}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_tab",
smalltalk.method({
selector: "tab",
fn: function (){
var self=this;
-return '\t';
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return '\t';
+return self}, function($ctx1) {$ctx1.fill(self,"tab",{}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addMethod(
"_value_",
smalltalk.method({
selector: "value:",
fn: function (aUTFCharCode){
var self=this;
-return String.fromCharCode(aUTFCharCode);;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return String.fromCharCode(aUTFCharCode);;
+return self}, function($ctx1) {$ctx1.fill(self,"value:",{aUTFCharCode:aUTFCharCode}, smalltalk.String.klass)})}
}),
smalltalk.String.klass);
smalltalk.addClass('Symbol', smalltalk.CharacterArray, [], 'Kernel-Collections');
@@ -2957,328 +2976,345 @@
"__lt",
smalltalk.method({
selector: "<",
fn: function (aSymbol){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__lt",[smalltalk.send(aSymbol,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString()).__lt(_st(aSymbol)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"<",{aSymbol:aSymbol}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"__lt_eq",
smalltalk.method({
selector: "<=",
fn: function (aSymbol){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__lt_eq",[smalltalk.send(aSymbol,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString()).__lt_eq(_st(aSymbol)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"<=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"__eq",
smalltalk.method({
selector: "=",
fn: function (aSymbol){
var self=this;
-var $1,$2;
-$1=smalltalk.send(smalltalk.send(aSymbol,"_class",[]),"__eq",[smalltalk.send(self,"_class",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1,$2;
+$1=_st(_st(aSymbol)._class()).__eq(_st(self)._class());
if(! smalltalk.assert($1)){
return false;
};
-$2=smalltalk.send(smalltalk.send(self,"_asString",[]),"__eq",[smalltalk.send(aSymbol,"_asString",[])]);
+$2=_st(_st(self)._asString()).__eq(_st(aSymbol)._asString());
return $2;
-}
+}, function($ctx1) {$ctx1.fill(self,"=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"__gt",
smalltalk.method({
selector: ">",
fn: function (aSymbol){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__gt",[smalltalk.send(aSymbol,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString()).__gt(_st(aSymbol)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,">",{aSymbol:aSymbol}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"__gt_eq",
smalltalk.method({
selector: ">=",
fn: function (aSymbol){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"__gt_eq",[smalltalk.send(aSymbol,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString()).__gt_eq(_st(aSymbol)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,">=",{aSymbol:aSymbol}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_asJSON",
smalltalk.method({
selector: "asJSON",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asJSON",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._asJSON();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJSON",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_asJavascript",
smalltalk.method({
selector: "asJavascript",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send("smalltalk.symbolFor(\x22","__comma",[smalltalk.send(self,"_asString",[])]),"__comma",["\x22)"]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st("smalltalk.symbolFor(\x22").__comma(_st(self)._asString())).__comma("\x22)");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asJavascript",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_asSelector",
smalltalk.method({
selector: "asSelector",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_asSelector",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._asSelector();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asSelector",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_asString",
smalltalk.method({
selector: "asString",
fn: function (){
var self=this;
-return self.value;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.value;
+return self}, function($ctx1) {$ctx1.fill(self,"asString",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
+"_asSuperSelector",
+smalltalk.method({
+selector: "asSuperSelector",
+fn: function (){
+var self=this;
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._asSuperSelector();
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asSuperSelector",{}, smalltalk.Symbol)})}
+}),
+smalltalk.Symbol);
+
+smalltalk.addMethod(
"_asSymbol",
smalltalk.method({
selector: "asSymbol",
fn: function (){
var self=this;
-return self;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"asSymbol",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_at_ifAbsent_",
smalltalk.method({
selector: "at:ifAbsent:",
fn: function (anIndex,aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_at_ifAbsent_",[anIndex,aBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._at_ifAbsent_(anIndex,aBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"at:ifAbsent:",{anIndex:anIndex,aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_collect_",
smalltalk.method({
selector: "collect:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asString",[]),"_collect_",[aBlock]),"_asSymbol",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._asString())._collect_(aBlock))._asSymbol();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"collect:",{aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_copyFrom_to_",
smalltalk.method({
selector: "copyFrom:to:",
fn: function (anIndex,anotherIndex){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_class",[]),"_fromString_",[smalltalk.send(smalltalk.send(self,"_asString",[]),"_copyFrom_to_",[anIndex,anotherIndex])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._class())._fromString_(_st(_st(self)._asString())._copyFrom_to_(anIndex,anotherIndex));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"copyFrom:to:",{anIndex:anIndex,anotherIndex:anotherIndex}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_deepCopy",
smalltalk.method({
selector: "deepCopy",
fn: function (){
var self=this;
-return self;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"deepCopy",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_detect_",
smalltalk.method({
selector: "detect:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_detect_",[aBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._detect_(aBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"detect:",{aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-smalltalk.send(smalltalk.send(self,"_asString",[]),"_do_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(_st(self)._asString())._do_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_isSymbol",
smalltalk.method({
selector: "isSymbol",
fn: function (){
var self=this;
-return true;
-}
+return smalltalk.withContext(function($ctx1) {
return true;
+}, function($ctx1) {$ctx1.fill(self,"isSymbol",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_printString",
smalltalk.method({
selector: "printString",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send("#","__comma",[smalltalk.send(self,"_asString",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st("#").__comma(_st(self)._asString());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"printString",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_select_",
smalltalk.method({
selector: "select:",
fn: function (aBlock){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_asString",[]),"_select_",[aBlock]),"_asSymbol",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._asString())._select_(aBlock))._asSymbol();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_shallowCopy",
smalltalk.method({
selector: "shallowCopy",
fn: function (){
var self=this;
-return self;
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self;
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"shallowCopy",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_asString",[]),"_size",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._asString())._size();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_value_",
smalltalk.method({
selector: "value:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(anObject,"_perform_",[self]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(anObject)._perform_(self);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"value:",{anObject:anObject}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_withIndexDo_",
smalltalk.method({
selector: "withIndexDo:",
fn: function (aBlock){
var self=this;
-smalltalk.send(smalltalk.send(self,"_asString",[]),"_withIndexDo_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(_st(self)._asString())._withIndexDo_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"withIndexDo:",{aBlock:aBlock}, smalltalk.Symbol)})}
}),
smalltalk.Symbol);
smalltalk.addMethod(
"_basicNew",
smalltalk.method({
selector: "basicNew",
fn: function (){
var self=this;
-smalltalk.send(self,"_shouldNotImplement",[]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._shouldNotImplement();
+return self}, function($ctx1) {$ctx1.fill(self,"basicNew",{}, smalltalk.Symbol.klass)})}
}),
smalltalk.Symbol.klass);
smalltalk.addMethod(
"_fromString_",
smalltalk.method({
selector: "fromString:",
fn: function (aString){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_lookup_",[aString]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._lookup_(aString);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.Symbol.klass)})}
}),
smalltalk.Symbol.klass);
smalltalk.addMethod(
"_lookup_",
smalltalk.method({
selector: "lookup:",
fn: function (aString){
var self=this;
-return smalltalk.symbolFor(aString);;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return smalltalk.symbolFor(aString);;
+return self}, function($ctx1) {$ctx1.fill(self,"lookup:",{aString:aString}, smalltalk.Symbol.klass)})}
}),
smalltalk.Symbol.klass);
smalltalk.addClass('Set', smalltalk.Collection, ['elements'], 'Kernel-Collections');
@@ -3286,143 +3322,145 @@
"__eq",
smalltalk.method({
selector: "=",
fn: function (aCollection){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(smalltalk.send(self,"_class",[]),"__eq",[smalltalk.send(aCollection,"_class",[])]),"_and_",[(function(){
-return smalltalk.send(self["@elements"],"__eq",[smalltalk.send(aCollection,"_asArray",[])]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(_st(self)._class()).__eq(_st(aCollection)._class()))._and_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self["@elements"]).__eq(_st(aCollection)._asArray());
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"=",{aCollection:aCollection}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_add_",
smalltalk.method({
selector: "add:",
fn: function (anObject){
var self=this;
-
+return smalltalk.withContext(function($ctx1) {
var found;
for(var i=0; i < self['@elements'].length; i++) {
if(anObject == self['@elements'][i]) {
found = true;
break;
}
}
if(!found) {self['@elements'].push(anObject)}
;
-;
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"add:",{anObject:anObject}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_asArray",
smalltalk.method({
selector: "asArray",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self["@elements"],"_copy",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@elements"])._copy();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"asArray",{}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_detect_ifNone_",
smalltalk.method({
selector: "detect:ifNone:",
fn: function (aBlock,anotherBlock){
var self=this;
-var $1;
-$1=smalltalk.send(self["@elements"],"_detect_ifNone_",[aBlock,anotherBlock]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@elements"])._detect_ifNone_(aBlock,anotherBlock);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"detect:ifNone:",{aBlock:aBlock,anotherBlock:anotherBlock}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-smalltalk.send(self["@elements"],"_do_",[aBlock]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self["@elements"])._do_(aBlock);
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_includes_",
smalltalk.method({
selector: "includes:",
fn: function (anObject){
var self=this;
-var $1;
-$1=smalltalk.send(self["@elements"],"_includes_",[anObject]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@elements"])._includes_(anObject);
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"includes:",{anObject:anObject}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_initialize",
smalltalk.method({
selector: "initialize",
fn: function (){
var self=this;
-smalltalk.send(self,"_initialize",[],smalltalk.Collection);
+return smalltalk.withContext(function($ctx1) {
smalltalk.Collection.fn.prototype._initialize.apply(_st(self), []);
self["@elements"]=[];
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_remove_",
smalltalk.method({
selector: "remove:",
fn: function (anObject){
var self=this;
-smalltalk.send(self["@elements"],"_remove_",[anObject]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self["@elements"])._remove_(anObject);
+return self}, function($ctx1) {$ctx1.fill(self,"remove:",{anObject:anObject}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_select_",
smalltalk.method({
selector: "select:",
fn: function (aBlock){
var self=this;
-var $1;
var collection;
-collection=smalltalk.send(smalltalk.send(self,"_class",[]),"_new",[]);
-smalltalk.send(self,"_do_",[(function(each){
-$1=smalltalk.send(aBlock,"_value_",[each]);
-if(smalltalk.assert($1)){
-return smalltalk.send(collection,"_add_",[each]);
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+collection=_st(_st(self)._class())._new();
+$1=self;
+$2=(function(each){
+return smalltalk.withContext(function($ctx2) {
$3=_st(aBlock)._value_(each);
+if(smalltalk.assert($3)){
+return _st(collection)._add_(each);
};
-})]);
-return collection;
-}
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})});
+_st($1)._do_($2);
+$4=collection;
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"select:",{aBlock:aBlock,collection:collection}, smalltalk.Set)})}
}),
smalltalk.Set);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self["@elements"],"_size",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self["@elements"])._size();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Set)})}
}),
smalltalk.Set);
@@ -3431,80 +3469,86 @@
"_back_",
smalltalk.method({
selector: "back:",
fn: function (anObject){
var self=this;
-smalltalk.send(self["@write"],"_add_",[anObject]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self["@write"])._add_(anObject);
+return self}, function($ctx1) {$ctx1.fill(self,"back:",{anObject:anObject}, smalltalk.Queue)})}
}),
smalltalk.Queue);
smalltalk.addMethod(
"_front",
smalltalk.method({
selector: "front",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_frontIfAbsent_",[(function(){
-return smalltalk.send(self,"_error_",["Cannot read from empty Queue."]);
-})]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._frontIfAbsent_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._error_("Cannot read from empty Queue.");
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"front",{}, smalltalk.Queue)})}
}),
smalltalk.Queue);
smalltalk.addMethod(
"_frontIfAbsent_",
smalltalk.method({
selector: "frontIfAbsent:",
fn: function (aBlock){
var self=this;
-var $1,$2,$3;
+var result;
+return smalltalk.withContext(function($ctx1) {
var $1,$2,$4,$6,$7,$5,$3,$8;
var $early={};
try {
-var result;
-result=smalltalk.send(self["@read"],"_at_ifAbsent_",[self["@readIndex"],(function(){
-$1=smalltalk.send(self["@write"],"_isEmpty",[]);
-if(smalltalk.assert($1)){
-$2=smalltalk.send(self["@readIndex"],"__gt",[(1)]);
-if(smalltalk.assert($2)){
+$1=self["@read"];
+$2=self["@readIndex"];
+$3=(function(){
+return smalltalk.withContext(function($ctx2) {
$4=_st(self["@write"])._isEmpty();
+$5=(function(){
+return smalltalk.withContext(function($ctx3) {
$6=_st(self["@readIndex"]).__gt((1));
+if(smalltalk.assert($6)){
self["@read"]=[];
self["@read"];
self["@readIndex"]=(1);
self["@readIndex"];
};
-$3=smalltalk.send(aBlock,"_value",[]);
-throw $early=[$3];
-};
+$7=_st(aBlock)._value();
+throw $early=[$7];
+}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})});
+_st($4)._ifTrue_($5);
self["@read"]=self["@write"];
self["@read"];
self["@readIndex"]=(1);
self["@readIndex"];
-self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
+self["@write"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
self["@write"];
-return smalltalk.send(self["@read"],"_first",[]);
-})]);
-smalltalk.send(self["@read"],"_at_put_",[self["@readIndex"],nil]);
-self["@readIndex"]=smalltalk.send(self["@readIndex"],"__plus",[(1)]);
-return result;
+return _st(self["@read"])._first();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
+result=_st($1)._at_ifAbsent_($2,$3);
+_st(self["@read"])._at_put_(self["@readIndex"],nil);
+self["@readIndex"]=_st(self["@readIndex"]).__plus((1));
+$8=result;
+return $8;
}
catch(e) {if(e===$early)return e[0]; throw e}
-}
+}, function($ctx1) {$ctx1.fill(self,"frontIfAbsent:",{aBlock:aBlock,result:result}, smalltalk.Queue)})}
}),
smalltalk.Queue);
smalltalk.addMethod(
"_initialize",
smalltalk.method({
selector: "initialize",
fn: function (){
var self=this;
-self["@read"]=[];
+return smalltalk.withContext(function($ctx1) {
smalltalk.Object.fn.prototype._initialize.apply(_st(self), []);
+self["@read"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
+self["@write"]=_st((smalltalk.OrderedCollection || OrderedCollection))._new();
self["@readIndex"]=(1);
-self["@write"]=smalltalk.send((smalltalk.OrderedCollection || OrderedCollection),"_new",[]);
-return self}
+return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Queue)})}
}),
smalltalk.Queue);
@@ -3513,63 +3557,59 @@
"_compile_",
smalltalk.method({
selector: "compile:",
fn: function (aString){
var self=this;
-return self.compile(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.compile(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"compile:",{aString:aString}, smalltalk.RegularExpression)})}
}),
smalltalk.RegularExpression);
smalltalk.addMethod(
"_exec_",
smalltalk.method({
selector: "exec:",
fn: function (aString){
var self=this;
-return self.exec(aString) || nil;
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.exec(aString) || nil;
+return self}, function($ctx1) {$ctx1.fill(self,"exec:",{aString:aString}, smalltalk.RegularExpression)})}
}),
smalltalk.RegularExpression);
smalltalk.addMethod(
"_test_",
smalltalk.method({
selector: "test:",
fn: function (aString){
var self=this;
-return self.test(aString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self.test(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"test:",{aString:aString}, smalltalk.RegularExpression)})}
}),
smalltalk.RegularExpression);
smalltalk.addMethod(
"_fromString_",
smalltalk.method({
selector: "fromString:",
fn: function (aString){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_fromString_flag_",[aString,""]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._fromString_flag_(aString,"");
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"fromString:",{aString:aString}, smalltalk.RegularExpression.klass)})}
}),
smalltalk.RegularExpression.klass);
smalltalk.addMethod(
"_fromString_flag_",
smalltalk.method({
selector: "fromString:flag:",
fn: function (aString,anotherString){
var self=this;
-return new RegExp(aString, anotherString);
-;
-return self}
+return smalltalk.withContext(function($ctx1) {
return new RegExp(aString, anotherString);
+return self}, function($ctx1) {$ctx1.fill(self,"fromString:flag:",{aString:aString,anotherString:anotherString}, smalltalk.RegularExpression.klass)})}
}),
smalltalk.RegularExpression.klass);
smalltalk.addClass('Stream', smalltalk.Object, ['collection', 'position', 'streamSize'], 'Kernel-Collections');
@@ -3577,318 +3617,326 @@
"_atEnd",
smalltalk.method({
selector: "atEnd",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_position",[]),"__eq",[smalltalk.send(self,"_size",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._position()).__eq(_st(self)._size());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"atEnd",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_atStart",
smalltalk.method({
selector: "atStart",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_position",[]),"__eq",[(0)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._position()).__eq((0));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"atStart",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_close",
smalltalk.method({
selector: "close",
fn: function (){
var self=this;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self}, function($ctx1) {$ctx1.fill(self,"close",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_collection",
smalltalk.method({
selector: "collection",
fn: function (){
var self=this;
-return self["@collection"];
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self["@collection"];
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"collection",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_contents",
smalltalk.method({
selector: "contents",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[(1),smalltalk.send(self,"_streamSize",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._collection())._copyFrom_to_((1),_st(self)._streamSize());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"contents",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_do_",
smalltalk.method({
selector: "do:",
fn: function (aBlock){
var self=this;
-smalltalk.send((function(){
-return smalltalk.send(self,"_atEnd",[]);
-}),"_whileFalse_",[(function(){
-return smalltalk.send(aBlock,"_value_",[smalltalk.send(self,"_next",[])]);
-})]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._atEnd();
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}))._whileFalse_((function(){
+return smalltalk.withContext(function($ctx2) {
return _st(aBlock)._value_(_st(self)._next());
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})}));
+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_flush",
smalltalk.method({
selector: "flush",
fn: function (){
var self=this;
-return self}
+return smalltalk.withContext(function($ctx1) {
return self}, function($ctx1) {$ctx1.fill(self,"flush",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_isEmpty",
smalltalk.method({
selector: "isEmpty",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(smalltalk.send(self,"_size",[]),"__eq",[(0)]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(_st(self)._size()).__eq((0));
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"isEmpty",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_next",
smalltalk.method({
selector: "next",
fn: function (){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_atEnd",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._atEnd();
if(smalltalk.assert($2)){
$1=nil;
} else {
-smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
-$1=smalltalk.send(self["@collection"],"_at_",[smalltalk.send(self,"_position",[])]);
+_st(self)._position_(_st(_st(self)._position()).__plus((1)));
+$1=_st(self["@collection"])._at_(_st(self)._position());
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"next",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_next_",
smalltalk.method({
selector: "next:",
fn: function (anInteger){
var self=this;
-var $1;
var tempCollection;
-tempCollection=smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_class",[]),"_new",[]);
-smalltalk.send(anInteger,"_timesRepeat_",[(function(){
-$1=smalltalk.send(self,"_atEnd",[]);
-if(! smalltalk.assert($1)){
-return smalltalk.send(tempCollection,"_add_",[smalltalk.send(self,"_next",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+tempCollection=_st(_st(_st(self)._collection())._class())._new();
+$1=anInteger;
+$2=(function(){
+return smalltalk.withContext(function($ctx2) {
$3=_st(self)._atEnd();
+if(! smalltalk.assert($3)){
+return _st(tempCollection)._add_(_st(self)._next());
};
-})]);
-return tempCollection;
-}
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
+_st($1)._timesRepeat_($2);
+$4=tempCollection;
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_nextPut_",
smalltalk.method({
selector: "nextPut:",
fn: function (anObject){
var self=this;
-smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
-smalltalk.send(smalltalk.send(self,"_collection",[]),"_at_put_",[smalltalk.send(self,"_position",[]),anObject]);
-smalltalk.send(self,"_setStreamSize_",[smalltalk.send(smalltalk.send(self,"_streamSize",[]),"_max_",[smalltalk.send(self,"_position",[])])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._position_(_st(_st(self)._position()).__plus((1)));
+_st(_st(self)._collection())._at_put_(_st(self)._position(),anObject);
+_st(self)._setStreamSize_(_st(_st(self)._streamSize())._max_(_st(self)._position()));
+return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{anObject:anObject}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_nextPutAll_",
smalltalk.method({
selector: "nextPutAll:",
fn: function (aCollection){
var self=this;
-smalltalk.send(aCollection,"_do_",[(function(each){
-return smalltalk.send(self,"_nextPut_",[each]);
-})]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(aCollection)._do_((function(each){
+return smalltalk.withContext(function($ctx2) {
return _st(self)._nextPut_(each);
+}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})}));
+return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aCollection:aCollection}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_peek",
smalltalk.method({
selector: "peek",
fn: function (){
var self=this;
-var $2,$1;
-$2=smalltalk.send(self,"_atEnd",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=_st(self)._atEnd();
if(! smalltalk.assert($2)){
-$1=smalltalk.send(smalltalk.send(self,"_collection",[]),"_at_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)])]);
+$1=_st(_st(self)._collection())._at_(_st(_st(self)._position()).__plus((1)));
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"peek",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_position",
smalltalk.method({
selector: "position",
fn: function (){
var self=this;
-var $1;
-if(($receiver = self["@position"]) == nil || $receiver == undefined){
+return smalltalk.withContext(function($ctx1) {
var $2,$1;
+$2=self["@position"];
+if(($receiver = $2) == nil || $receiver == undefined){
self["@position"]=(0);
$1=self["@position"];
} else {
-$1=self["@position"];
+$1=$2;
};
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"position",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_position_",
smalltalk.method({
selector: "position:",
fn: function (anInteger){
var self=this;
-self["@position"]=anInteger;
-return self}
+return smalltalk.withContext(function($ctx1) {
self["@position"]=anInteger;
+return self}, function($ctx1) {$ctx1.fill(self,"position:",{anInteger:anInteger}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_reset",
smalltalk.method({
selector: "reset",
fn: function (){
var self=this;
-smalltalk.send(self,"_position_",[(0)]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._position_((0));
+return self}, function($ctx1) {$ctx1.fill(self,"reset",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_resetContents",
smalltalk.method({
selector: "resetContents",
fn: function (){
var self=this;
-smalltalk.send(self,"_reset",[]);
-smalltalk.send(self,"_setStreamSize_",[(0)]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._reset();
+_st(self)._setStreamSize_((0));
+return self}, function($ctx1) {$ctx1.fill(self,"resetContents",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_setCollection_",
smalltalk.method({
selector: "setCollection:",
fn: function (aCollection){
var self=this;
-self["@collection"]=aCollection;
-return self}
+return smalltalk.withContext(function($ctx1) {
self["@collection"]=aCollection;
+return self}, function($ctx1) {$ctx1.fill(self,"setCollection:",{aCollection:aCollection}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_setStreamSize_",
smalltalk.method({
selector: "setStreamSize:",
fn: function (anInteger){
var self=this;
-self["@streamSize"]=anInteger;
-return self}
+return smalltalk.withContext(function($ctx1) {
self["@streamSize"]=anInteger;
+return self}, function($ctx1) {$ctx1.fill(self,"setStreamSize:",{anInteger:anInteger}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_setToEnd",
smalltalk.method({
selector: "setToEnd",
fn: function (){
var self=this;
-smalltalk.send(self,"_position_",[smalltalk.send(self,"_size",[])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._position_(_st(self)._size());
+return self}, function($ctx1) {$ctx1.fill(self,"setToEnd",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_size",
smalltalk.method({
selector: "size",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_streamSize",[]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._streamSize();
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"size",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_skip_",
smalltalk.method({
selector: "skip:",
fn: function (anInteger){
var self=this;
-smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[anInteger]),"_min_max_",[smalltalk.send(self,"_size",[]),(0)])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._position_(_st(_st(_st(self)._position()).__plus(anInteger))._min_max_(_st(self)._size(),(0)));
+return self}, function($ctx1) {$ctx1.fill(self,"skip:",{anInteger:anInteger}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_streamSize",
smalltalk.method({
selector: "streamSize",
fn: function (){
var self=this;
-return self["@streamSize"];
-}
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=self["@streamSize"];
+return $1;
+}, function($ctx1) {$ctx1.fill(self,"streamSize",{}, smalltalk.Stream)})}
}),
smalltalk.Stream);
smalltalk.addMethod(
"_on_",
smalltalk.method({
selector: "on:",
fn: function (aCollection){
var self=this;
-var $2,$3,$1;
-$2=smalltalk.send(self,"_new",[]);
-smalltalk.send($2,"_setCollection_",[aCollection]);
-smalltalk.send($2,"_setStreamSize_",[smalltalk.send(aCollection,"_size",[])]);
-$3=smalltalk.send($2,"_yourself",[]);
+return smalltalk.withContext(function($ctx1) {
var $2,$3,$1;
+$2=_st(self)._new();
+_st($2)._setCollection_(aCollection);
+_st($2)._setStreamSize_(_st(aCollection)._size());
+$3=_st($2)._yourself();
$1=$3;
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"on:",{aCollection:aCollection}, smalltalk.Stream.klass)})}
}),
smalltalk.Stream.klass);
smalltalk.addClass('StringStream', smalltalk.Stream, [], 'Kernel-Collections');
@@ -3896,95 +3944,98 @@
"_cr",
smalltalk.method({
selector: "cr",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_cr",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._cr());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"cr",{}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_crlf",
smalltalk.method({
selector: "crlf",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_crlf",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._crlf());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"crlf",{}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_lf",
smalltalk.method({
selector: "lf",
fn: function (){
var self=this;
-var $1;
-$1=smalltalk.send(self,"_nextPutAll_",[smalltalk.send((smalltalk.String || String),"_lf",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1;
+$1=_st(self)._nextPutAll_(_st((smalltalk.String || String))._lf());
return $1;
-}
+}, function($ctx1) {$ctx1.fill(self,"lf",{}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_next_",
smalltalk.method({
selector: "next:",
fn: function (anInteger){
var self=this;
-var $1;
var tempCollection;
-tempCollection=smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_class",[]),"_new",[]);
-smalltalk.send(anInteger,"_timesRepeat_",[(function(){
-$1=smalltalk.send(self,"_atEnd",[]);
-if(! smalltalk.assert($1)){
-tempCollection=smalltalk.send(tempCollection,"__comma",[smalltalk.send(self,"_next",[])]);
+return smalltalk.withContext(function($ctx1) {
var $1,$3,$2,$4;
+tempCollection=_st(_st(_st(self)._collection())._class())._new();
+$1=anInteger;
+$2=(function(){
+return smalltalk.withContext(function($ctx2) {
$3=_st(self)._atEnd();
+if(! smalltalk.assert($3)){
+tempCollection=_st(tempCollection).__comma(_st(self)._next());
return tempCollection;
};
-})]);
-return tempCollection;
-}
+}, function($ctx2) {$ctx2.fillBlock({},$ctx1)})});
+_st($1)._timesRepeat_($2);
+$4=tempCollection;
+return $4;
+}, function($ctx1) {$ctx1.fill(self,"next:",{anInteger:anInteger,tempCollection:tempCollection}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_nextPut_",
smalltalk.method({
selector: "nextPut:",
fn: function (aString){
var self=this;
-smalltalk.send(self,"_nextPutAll_",[aString]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._nextPutAll_(aString);
+return self}, function($ctx1) {$ctx1.fill(self,"nextPut:",{aString:aString}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_nextPutAll_",
smalltalk.method({
selector: "nextPutAll:",
fn: function (aString){
var self=this;
-smalltalk.send(self,"_setCollection_",[smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[(1),smalltalk.send(self,"_position",[])]),"__comma",[aString]),"__comma",[smalltalk.send(smalltalk.send(self,"_collection",[]),"_copyFrom_to_",[smalltalk.send(smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[(1)]),"__plus",[smalltalk.send(aString,"_size",[])]),smalltalk.send(smalltalk.send(self,"_collection",[]),"_size",[])])])]);
-smalltalk.send(self,"_position_",[smalltalk.send(smalltalk.send(self,"_position",[]),"__plus",[smalltalk.send(aString,"_size",[])])]);
-smalltalk.send(self,"_setStreamSize_",[smalltalk.send(smalltalk.send(self,"_streamSize",[]),"_max_",[smalltalk.send(self,"_position",[])])]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._setCollection_(_st(_st(_st(_st(self)._collection())._copyFrom_to_((1),_st(self)._position())).__comma(aString)).__comma(_st(_st(self)._collection())._copyFrom_to_(_st(_st(_st(self)._position()).__plus((1))).__plus(_st(aString)._size()),_st(_st(self)._collection())._size())));
+_st(self)._position_(_st(_st(self)._position()).__plus(_st(aString)._size()));
+_st(self)._setStreamSize_(_st(_st(self)._streamSize())._max_(_st(self)._position()));
+return self}, function($ctx1) {$ctx1.fill(self,"nextPutAll:",{aString:aString}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);
smalltalk.addMethod(
"_space",
smalltalk.method({
selector: "space",
fn: function (){
var self=this;
-smalltalk.send(self,"_nextPut_",[" "]);
-return self}
+return smalltalk.withContext(function($ctx1) {
_st(self)._nextPut_(" ");
+return self}, function($ctx1) {$ctx1.fill(self,"space",{}, smalltalk.StringStream)})}
}),
smalltalk.StringStream);