Skip to content

Instantly share code, notes, and snippets.

@sjrd
Created October 17, 2014 22:02
Show Gist options
  • Save sjrd/f1366afad5702fe3819b to your computer and use it in GitHub Desktop.
Save sjrd/f1366afad5702fe3819b to your computer and use it in GitHub Desktop.
Differences in reversi-fastopt.js from optimizing AnonFunctions to optimizing Closures
diff --git "a/C:\\Users\\Sepi\\Documents\\Projets\\reversi-fastopt.js" "b/C:\\Users\\Sepi\\Documents\\Projets\\scalajs\\examples\\reversi\\target\\scala-2.11\\reversi-fastopt.js"
index 2eba7e5..d384cf7 100644
--- "a/C:\\Users\\Sepi\\Documents\\Projets\\reversi-fastopt.js"
+++ "b/C:\\Users\\Sepi\\Documents\\Projets\\scalajs\\examples\\reversi\\target\\scala-2.11\\reversi-fastopt.js"
@@ -906,6 +906,12 @@ ScalaJS.i.sc_GenSetLike$class__equals__sc_GenSetLike__O__Z = (function($$this, t
return false
}
});
+ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer = (function($$this) {
+ var result = new ScalaJS.c.scm_ArrayBuffer().init___I($$this.size__I());
+ var xs = $$this.seq__sc_TraversableOnce();
+ result.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs);
+ return result
+});
ScalaJS.i.sc_IndexedSeqOptimized$class__lengthCompare__sc_IndexedSeqOptimized__I__I = (function($$this, len) {
return (($$this.length__I() - len) | 0)
});
@@ -994,6 +1000,19 @@ ScalaJS.i.sc_Iterator$class__foreach__sc_Iterator__F1__V = (function($$this, f)
f.apply__O__O($$this.next__O())
}
});
+ScalaJS.i.sc_Iterator$class__copyToArray__sc_Iterator__O__I__I__V = (function($$this, xs, start, len) {
+ var requirement = ((start >= 0) && ((start < ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(xs)) || (ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(xs) === 0)));
+ if ((!requirement)) {
+ throw new ScalaJS.c.jl_IllegalArgumentException().init___T(("requirement failed: " + new ScalaJS.c.s_StringContext().init___sc_Seq(new ScalaJS.c.sjs_js_WrappedArray().init___sjs_js_Array(["start ", " out of range ", ""])).s__sc_Seq__T(new ScalaJS.c.sjs_js_WrappedArray().init___sjs_js_Array([start, ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(xs)]))))
+ };
+ var i = start;
+ var y = ((ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(xs) - start) | 0);
+ var end = ((start + ((len < y) ? len : y)) | 0);
+ while (((i < end) && $$this.hasNext__Z())) {
+ ScalaJS.m.sr_ScalaRunTime().array$undupdate__O__I__O__V(xs, i, $$this.next__O());
+ i = ((1 + i) | 0)
+ }
+});
ScalaJS.i.sc_Iterator$class__isEmpty__sc_Iterator__Z = (function($$this) {
return (!$$this.hasNext__Z())
});
@@ -1120,6 +1139,12 @@ ScalaJS.i.sc_SeqLike$class__lengthCompare__sc_SeqLike__I__I = (function($$this,
return ((i - len) | 0)
}
});
+ScalaJS.i.sc_SetLike$class__toBuffer__sc_SetLike__scm_Buffer = (function($$this) {
+ var result = new ScalaJS.c.scm_ArrayBuffer().init___I($$this.size__I());
+ var xs = $$this.seq__sc_TraversableOnce();
+ result.$$plus$plus$eq__sc_TraversableOnce__scm_ArrayBuffer(xs);
+ return result
+});
ScalaJS.i.sc_SetLike$class__isEmpty__sc_SetLike__Z = (function($$this) {
return ($$this.size__I() === 0)
});
@@ -1161,20 +1186,37 @@ ScalaJS.i.sc_TraversableLike$class__headOption__sc_TraversableLike__s_Option = (
ScalaJS.i.sc_TraversableLike$class__toString__sc_TraversableLike__T = (function($$this) {
return $$this.mkString__T__T__T__T(($$this.stringPrefix__T() + "("), ", ", ")")
});
-ScalaJS.i.sc_TraversableLike$class__map__sc_TraversableLike__F1__scg_CanBuildFrom__O = (function($$this, f, bf) {
- var b = ScalaJS.i.sc_TraversableLike$class__builder$1__sc_TraversableLike__scg_CanBuildFrom__scm_Builder($$this, bf);
- $$this.foreach__F1__V(new ScalaJS.c.sjsr_AnonFunction1().init___sjs_js_Function1((function($$this$1, b$1, f$1) {
- return (function(x$2) {
- return b$1.$$plus$eq__O__scm_Builder(f$1.apply__O__O(x$2))
- })
- })($$this, b, f)));
- return b.result__O()
+ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O = (function($$this, evidence$1) {
+ if ($$this.isTraversableAgain__Z()) {
+ var result = evidence$1.newArray__I__O($$this.size__I());
+ $$this.copyToArray__O__I__V(result, 0);
+ return result
+ } else {
+ return $$this.toBuffer__scm_Buffer().toArray__s_reflect_ClassTag__O(evidence$1)
+ }
});
ScalaJS.i.sc_TraversableOnce$class__mkString__sc_TraversableOnce__T__T__T__T = (function($$this, start, sep, end) {
var this$1 = $$this.addString__scm_StringBuilder__T__T__T__scm_StringBuilder(new ScalaJS.c.scm_StringBuilder().init___(), start, sep, end);
var this$2 = this$1.underlying$5;
return this$2.content$1
});
+ScalaJS.i.sc_TraversableOnce$class__size__sc_TraversableOnce__I = (function($$this) {
+ var result = new ScalaJS.c.sr_IntRef().init___I(0);
+ $$this.foreach__F1__V(new ScalaJS.c.sjsr_AnonFunction1().init___sjs_js_Function1((function($$this$1, result$1) {
+ return (function(x$2) {
+ result$1.elem$1 = ((1 + result$1.elem$1) | 0)
+ })
+ })($$this, result)));
+ return result.elem$1
+});
+ScalaJS.i.sc_TraversableOnce$class__copyToArray__sc_TraversableOnce__O__I__V = (function($$this, xs, start) {
+ $$this.copyToArray__O__I__I__V(xs, start, ((ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(xs) - start) | 0))
+});
+ScalaJS.i.sc_TraversableOnce$class__to__sc_TraversableOnce__scg_CanBuildFrom__O = (function($$this, cbf) {
+ var b = cbf.apply__scm_Builder();
+ b.$$plus$plus$eq__sc_TraversableOnce__scg_Growable($$this.seq__sc_TraversableOnce());
+ return b.result__O()
+});
ScalaJS.i.sc_TraversableOnce$class__nonEmpty__sc_TraversableOnce__Z = (function($$this) {
return (!$$this.isEmpty__Z())
});
@@ -4082,22 +4124,22 @@ ScalaJS.c.s_StringContext.prototype.checkLengths__sc_Seq__V = (function(args) {
}
});
ScalaJS.c.s_StringContext.prototype.s__sc_Seq__T = (function(args) {
- return this.standardInterpolator__F1__sc_Seq__T(new ScalaJS.c.sjsr_AnonFunction1().init___sjs_js_Function1((function(this$2) {
+ var f = (function(this$2) {
return (function(str$2) {
var str = ScalaJS.as.T(str$2);
var this$1 = ScalaJS.m.s_StringContext();
return this$1.treatEscapes0__p1__T__Z__T(str, false)
})
- })(this)), args)
-});
-ScalaJS.c.s_StringContext.prototype.standardInterpolator__F1__sc_Seq__T = (function(process, args) {
+ })(this);
this.checkLengths__sc_Seq__V(args);
var pi = this.parts$1.iterator__sc_Iterator();
var ai = args.iterator__sc_Iterator();
- var bldr = new ScalaJS.c.jl_StringBuilder().init___T(ScalaJS.as.T(process.apply__O__O(pi.next__O())));
+ var arg1 = pi.next__O();
+ var bldr = new ScalaJS.c.jl_StringBuilder().init___T(ScalaJS.as.T(f(arg1)));
while (ai.hasNext__Z()) {
bldr.append__O__jl_StringBuilder(ai.next__O());
- bldr.append__T__jl_StringBuilder(ScalaJS.as.T(process.apply__O__O(pi.next__O())))
+ var arg1$1 = pi.next__O();
+ bldr.append__T__jl_StringBuilder(ScalaJS.as.T(f(arg1$1)))
};
return bldr.content$1
});
@@ -5798,6 +5840,9 @@ ScalaJS.h.sc_AbstractIterator.prototype = ScalaJS.c.sc_AbstractIterator.prototyp
ScalaJS.c.sc_AbstractIterator.prototype.seq__sc_TraversableOnce = (function() {
return this
});
+ScalaJS.c.sc_AbstractIterator.prototype.copyToArray__O__I__V = (function(xs, start) {
+ ScalaJS.i.sc_TraversableOnce$class__copyToArray__sc_TraversableOnce__O__I__V(this, xs, start)
+});
ScalaJS.c.sc_AbstractIterator.prototype.init___ = (function() {
return this
});
@@ -5810,12 +5855,26 @@ ScalaJS.c.sc_AbstractIterator.prototype.toString__T = (function() {
ScalaJS.c.sc_AbstractIterator.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_Iterator$class__foreach__sc_Iterator__F1__V(this, f)
});
+ScalaJS.c.sc_AbstractIterator.prototype.toBuffer__scm_Buffer = (function() {
+ var this$1 = ScalaJS.m.scm_ArrayBuffer();
+ var cbf = this$1.ReusableCBFInstance$2;
+ return ScalaJS.as.scm_Buffer(ScalaJS.i.sc_TraversableOnce$class__to__sc_TraversableOnce__scg_CanBuildFrom__O(this, cbf))
+});
+ScalaJS.c.sc_AbstractIterator.prototype.size__I = (function() {
+ return ScalaJS.i.sc_TraversableOnce$class__size__sc_TraversableOnce__I(this)
+});
ScalaJS.c.sc_AbstractIterator.prototype.toStream__sci_Stream = (function() {
return ScalaJS.i.sc_Iterator$class__toStream__sc_Iterator__sci_Stream(this)
});
ScalaJS.c.sc_AbstractIterator.prototype.addString__scm_StringBuilder__T__T__T__scm_StringBuilder = (function(b, start, sep, end) {
return ScalaJS.i.sc_TraversableOnce$class__addString__sc_TraversableOnce__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end)
});
+ScalaJS.c.sc_AbstractIterator.prototype.isTraversableAgain__Z = (function() {
+ return false
+});
+ScalaJS.c.sc_AbstractIterator.prototype.copyToArray__O__I__I__V = (function(xs, start, len) {
+ ScalaJS.i.sc_Iterator$class__copyToArray__sc_Iterator__O__I__I__V(this, xs, start, len)
+});
ScalaJS.is.sc_AbstractIterator = (function(obj) {
return (!(!((obj && obj.$classData) && obj.$classData.ancestors.sc_AbstractIterator)))
});
@@ -5849,15 +5908,29 @@ ScalaJS.h.sc_AbstractTraversable = (function() {
/*<skip>*/
});
ScalaJS.h.sc_AbstractTraversable.prototype = ScalaJS.c.sc_AbstractTraversable.prototype;
+ScalaJS.c.sc_AbstractTraversable.prototype.copyToArray__O__I__V = (function(xs, start) {
+ ScalaJS.i.sc_TraversableOnce$class__copyToArray__sc_TraversableOnce__O__I__V(this, xs, start)
+});
ScalaJS.c.sc_AbstractTraversable.prototype.mkString__T__T__T__T = (function(start, sep, end) {
return ScalaJS.i.sc_TraversableOnce$class__mkString__sc_TraversableOnce__T__T__T__T(this, start, sep, end)
});
+ScalaJS.c.sc_AbstractTraversable.prototype.toBuffer__scm_Buffer = (function() {
+ var this$1 = ScalaJS.m.scm_ArrayBuffer();
+ var cbf = this$1.ReusableCBFInstance$2;
+ return ScalaJS.as.scm_Buffer(ScalaJS.i.sc_TraversableLike$class__to__sc_TraversableLike__scg_CanBuildFrom__O(this, cbf))
+});
ScalaJS.c.sc_AbstractTraversable.prototype.addString__scm_StringBuilder__T__T__T__scm_StringBuilder = (function(b, start, sep, end) {
return ScalaJS.i.sc_TraversableOnce$class__addString__sc_TraversableOnce__scm_StringBuilder__T__T__T__scm_StringBuilder(this, b, start, sep, end)
});
ScalaJS.c.sc_AbstractTraversable.prototype.repr__O = (function() {
return this
});
+ScalaJS.c.sc_AbstractTraversable.prototype.isTraversableAgain__Z = (function() {
+ return true
+});
+ScalaJS.c.sc_AbstractTraversable.prototype.toArray__s_reflect_ClassTag__O = (function(evidence$1) {
+ return ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O(this, evidence$1)
+});
ScalaJS.c.sc_AbstractTraversable.prototype.newBuilder__scm_Builder = (function() {
return this.companion__scg_GenericCompanion().newBuilder__scm_Builder()
});
@@ -6720,38 +6793,27 @@ ScalaJS.c.sci_Range$.prototype.init___ = (function() {
ScalaJS.c.sci_Range$.prototype.description__p1__I__I__I__Z__T = (function(start, end, step, isInclusive) {
var this$2 = new ScalaJS.c.sci_StringOps().init___T("%d %s %d by %s");
var array = [start, (isInclusive ? "to" : "until"), end, step];
- var jsx$3 = ScalaJS.m.sjsr_RuntimeString();
+ var jsx$1 = ScalaJS.m.sjsr_RuntimeString();
+ var f = (function($$this$1) {
+ return (function(arg$2) {
+ return ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O($$this$1, arg$2)
+ })
+ })(this$2);
var this$4 = ScalaJS.m.sc_Seq();
ScalaJS.m.sjs_js_WrappedArray();
- var array$1 = [];
+ var b = new ScalaJS.c.sjs_js_WrappedArray().init___();
ScalaJS.uI(array["length"]);
var i = 0;
var len = ScalaJS.uI(array["length"]);
while ((i < len)) {
var index = i;
- var x$2 = array[index];
- var elem = ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O(this$2, x$2);
- array$1["push"](elem);
+ var arg1 = array[index];
+ var elem = f(arg1);
+ b.array$6["push"](elem);
i = ((1 + i) | 0)
};
var evidence$1 = ScalaJS.m.s_reflect_ClassTag().AnyRef$1;
- var result = evidence$1.newArray__I__O(ScalaJS.uI(array$1["length"]));
- var len$1 = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var i$1 = 0;
- var j = 0;
- var $$this$1 = ScalaJS.uI(array$1["length"]);
- var $$this$2 = (($$this$1 < len$1) ? $$this$1 : len$1);
- var that = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var end$1 = (($$this$2 < that) ? $$this$2 : that);
- while ((i$1 < end$1)) {
- var jsx$2 = ScalaJS.m.sr_ScalaRunTime();
- var jsx$1 = j;
- var index$1 = i$1;
- jsx$2.array$undupdate__O__I__O__V(result, jsx$1, array$1[index$1]);
- i$1 = ((1 + i$1) | 0);
- j = ((1 + j) | 0)
- };
- return jsx$3.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(result, 1))
+ return jsx$1.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O(b, evidence$1), 1))
});
ScalaJS.c.sci_Range$.prototype.scala$collection$immutable$Range$$fail__I__I__I__Z__sr_Nothing$ = (function(start, end, step, isInclusive) {
throw new ScalaJS.c.jl_IllegalArgumentException().init___T((this.description__p1__I__I__I__Z__T(start, end, step, isInclusive) + ": seqs cannot contain more than Int.MaxValue elements."))
@@ -6891,6 +6953,9 @@ ScalaJS.c.sci_StringOps.prototype.seq__sc_TraversableOnce = (function() {
var $$this = this.repr$1;
return new ScalaJS.c.sci_WrappedString().init___T($$this)
});
+ScalaJS.c.sci_StringOps.prototype.copyToArray__O__I__V = (function(xs, start) {
+ ScalaJS.i.sc_TraversableOnce$class__copyToArray__sc_TraversableOnce__O__I__V(this, xs, start)
+});
ScalaJS.c.sci_StringOps.prototype.head__O = (function() {
return ScalaJS.i.sc_IndexedSeqOptimized$class__head__sc_IndexedSeqOptimized__O(this)
});
@@ -6924,6 +6989,9 @@ ScalaJS.c.sci_StringOps.prototype.toString__T = (function() {
ScalaJS.c.sci_StringOps.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_IndexedSeqOptimized$class__foreach__sc_IndexedSeqOptimized__F1__V(this, f)
});
+ScalaJS.c.sci_StringOps.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.sci_StringOps.prototype.size__I = (function() {
var $$this = this.repr$1;
return ScalaJS.i.sjsr_RuntimeString$class__length__sjsr_RuntimeString__I($$this)
@@ -6953,6 +7021,9 @@ ScalaJS.c.sci_StringOps.prototype.hashCode__I = (function() {
ScalaJS.c.sci_StringOps.prototype.copyToArray__O__I__I__V = (function(xs, start, len) {
ScalaJS.i.sc_IndexedSeqOptimized$class__copyToArray__sc_IndexedSeqOptimized__O__I__I__V(this, xs, start, len)
});
+ScalaJS.c.sci_StringOps.prototype.isTraversableAgain__Z = (function() {
+ return true
+});
ScalaJS.c.sci_StringOps.prototype.init___T = (function(repr) {
this.repr$1 = repr;
return this
@@ -7312,6 +7383,59 @@ ScalaJS.m.scm_ArrayBuilder = (function() {
};
return ScalaJS.n.scm_ArrayBuilder
});
+ScalaJS.is.scm_Buffer = (function(obj) {
+ return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Buffer)))
+});
+ScalaJS.as.scm_Buffer = (function(obj) {
+ return ((ScalaJS.is.scm_Buffer(obj) || (obj === null)) ? obj : ScalaJS.throwClassCastException(obj, "scala.collection.mutable.Buffer"))
+});
+ScalaJS.isArrayOf.scm_Buffer = (function(obj, depth) {
+ return (!(!(((obj && obj.$classData) && (obj.$classData.arrayDepth === depth)) && obj.$classData.arrayBase.ancestors.scm_Buffer)))
+});
+ScalaJS.asArrayOf.scm_Buffer = (function(obj, depth) {
+ return ((ScalaJS.isArrayOf.scm_Buffer(obj, depth) || (obj === null)) ? obj : ScalaJS.throwArrayCastException(obj, "Lscala.collection.mutable.Buffer;", depth))
+});
+ScalaJS.d.scm_Buffer = new ScalaJS.ClassTypeData({
+ scm_Buffer: 0
+}, true, "scala.collection.mutable.Buffer", (void 0), {
+ scm_Buffer: 1,
+ scm_BufferLike: 1,
+ scg_Subtractable: 1,
+ sc_script_Scriptable: 1,
+ scg_Shrinkable: 1,
+ scg_Growable: 1,
+ scg_Clearable: 1,
+ scm_Seq: 1,
+ scm_SeqLike: 1,
+ scm_Cloneable: 1,
+ s_Cloneable: 1,
+ jl_Cloneable: 1,
+ sc_Seq: 1,
+ sc_SeqLike: 1,
+ sc_GenSeq: 1,
+ sc_GenSeqLike: 1,
+ s_PartialFunction: 1,
+ F1: 1,
+ scm_Iterable: 1,
+ sc_Iterable: 1,
+ sc_IterableLike: 1,
+ s_Equals: 1,
+ sc_GenIterable: 1,
+ sc_GenIterableLike: 1,
+ scm_Traversable: 1,
+ s_Mutable: 1,
+ sc_Traversable: 1,
+ sc_GenTraversable: 1,
+ scg_GenericTraversableTemplate: 1,
+ sc_TraversableLike: 1,
+ sc_GenTraversableLike: 1,
+ sc_Parallelizable: 1,
+ sc_TraversableOnce: 1,
+ sc_GenTraversableOnce: 1,
+ scg_FilterMonadic: 1,
+ scg_HasNewBuilder: 1,
+ O: 1
+});
ScalaJS.is.scm_Builder = (function(obj) {
return (!(!((obj && obj.$classData) && obj.$classData.ancestors.scm_Builder)))
});
@@ -9061,13 +9185,41 @@ ScalaJS.c.Lreversi_Reversi$$anonfun$computeFlips$1$$anonfun$apply$3.prototype.ap
return this.apply__I__sci_List(ScalaJS.uI(v1))
});
ScalaJS.c.Lreversi_Reversi$$anonfun$computeFlips$1$$anonfun$apply$3.prototype.apply__I__sci_List = (function(j) {
- var jsx$2 = this.$$outer$2.$$outer$2.computeFlipsInDirection__I__I__I__I__sci_List(this.$$outer$2.square$1$f.x$1, this.$$outer$2.square$1$f.y$1, this.i$1$2, j);
- var jsx$1 = new ScalaJS.c.sjsr_AnonFunction1().init___sjs_js_Function1((function(flip$2) {
+ var this$2 = this.$$outer$2.$$outer$2.computeFlipsInDirection__I__I__I__I__sci_List(this.$$outer$2.square$1$f.x$1, this.$$outer$2.square$1$f.y$1, this.i$1$2, j);
+ var f = (function(flip$2) {
var flip = ScalaJS.as.Lreversi_Reversi$Square(flip$2);
return flip
- }));
+ });
var this$1 = ScalaJS.m.sci_List();
- return ScalaJS.as.sci_List(jsx$2.map__F1__scg_CanBuildFrom__O(jsx$1, this$1.ReusableCBFInstance$2))
+ var bf = this$1.ReusableCBFInstance$2;
+ if ((bf === ScalaJS.m.sci_List().ReusableCBFInstance$2)) {
+ if ((this$2 === ScalaJS.m.sci_Nil())) {
+ var jsx$1 = ScalaJS.m.sci_Nil()
+ } else {
+ var arg1 = this$2.head__O();
+ var h = new ScalaJS.c.sci_$colon$colon().init___O__sci_List(f(arg1), ScalaJS.m.sci_Nil());
+ var t = h;
+ var rest = ScalaJS.as.sci_List(this$2.tail__O());
+ while ((rest !== ScalaJS.m.sci_Nil())) {
+ var arg1$1 = rest.head__O();
+ var nx = new ScalaJS.c.sci_$colon$colon().init___O__sci_List(f(arg1$1), ScalaJS.m.sci_Nil());
+ t.tl$5 = nx;
+ t = nx;
+ rest = ScalaJS.as.sci_List(rest.tail__O())
+ };
+ var jsx$1 = h
+ }
+ } else {
+ var b = ScalaJS.i.sc_TraversableLike$class__builder$1__sc_TraversableLike__scg_CanBuildFrom__scm_Builder(this$2, bf);
+ var these = this$2;
+ while ((!these.isEmpty__Z())) {
+ var arg1$2 = these.head__O();
+ b.$$plus$eq__O__scm_Builder(f(arg1$2));
+ these = ScalaJS.as.sci_List(these.tail__O())
+ };
+ var jsx$1 = b.result__O()
+ };
+ return ScalaJS.as.sci_List(jsx$1)
});
ScalaJS.is.Lreversi_Reversi$$anonfun$computeFlips$1$$anonfun$apply$3 = (function(obj) {
return (!(!((obj && obj.$classData) && obj.$classData.ancestors.Lreversi_Reversi$$anonfun$computeFlips$1$$anonfun$apply$3)))
@@ -12797,38 +12949,27 @@ ScalaJS.c.sjsr_RuntimeLong.prototype.toHexString__T = (function() {
var arg$macro$1 = this.h$2;
var this$2 = new ScalaJS.c.sci_StringOps().init___T("%05x%05x%06x");
var array = [arg$macro$1, mp, lp];
- var jsx$3 = ScalaJS.m.sjsr_RuntimeString();
+ var jsx$1 = ScalaJS.m.sjsr_RuntimeString();
+ var f = (function($$this$1) {
+ return (function(arg$2) {
+ return ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O($$this$1, arg$2)
+ })
+ })(this$2);
var this$4 = ScalaJS.m.sc_Seq();
ScalaJS.m.sjs_js_WrappedArray();
- var array$1 = [];
+ var b = new ScalaJS.c.sjs_js_WrappedArray().init___();
ScalaJS.uI(array["length"]);
var i = 0;
var len = ScalaJS.uI(array["length"]);
while ((i < len)) {
var index = i;
- var x$2 = array[index];
- var elem = ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O(this$2, x$2);
- array$1["push"](elem);
+ var arg1 = array[index];
+ var elem = f(arg1);
+ b.array$6["push"](elem);
i = ((1 + i) | 0)
};
var evidence$1 = ScalaJS.m.s_reflect_ClassTag().AnyRef$1;
- var result = evidence$1.newArray__I__O(ScalaJS.uI(array$1["length"]));
- var len$1 = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var i$1 = 0;
- var j = 0;
- var $$this$1 = ScalaJS.uI(array$1["length"]);
- var $$this$2 = (($$this$1 < len$1) ? $$this$1 : len$1);
- var that = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var end = (($$this$2 < that) ? $$this$2 : that);
- while ((i$1 < end)) {
- var jsx$2 = ScalaJS.m.sr_ScalaRunTime();
- var jsx$1 = j;
- var index$1 = i$1;
- jsx$2.array$undupdate__O__I__O__V(result, jsx$1, array$1[index$1]);
- i$1 = ((1 + i$1) | 0);
- j = ((1 + j) | 0)
- };
- return jsx$3.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(result, 1))
+ return jsx$1.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O(b, evidence$1), 1))
});
ScalaJS.c.sjsr_RuntimeLong.prototype.$$times__sjsr_RuntimeLong__sjsr_RuntimeLong = (function(y) {
var _1 = (8191 & this.l$2);
@@ -13162,38 +13303,27 @@ ScalaJS.c.sjsr_RuntimeLong.prototype.toOctalString__T = (function() {
var hp = ((this.h$2 << 2) | (this.m$2 >> 20));
var this$2 = new ScalaJS.c.sci_StringOps().init___T("%08o%07o%07o");
var array = [hp, mp, lp];
- var jsx$3 = ScalaJS.m.sjsr_RuntimeString();
+ var jsx$1 = ScalaJS.m.sjsr_RuntimeString();
+ var f = (function($$this$1) {
+ return (function(arg$2) {
+ return ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O($$this$1, arg$2)
+ })
+ })(this$2);
var this$4 = ScalaJS.m.sc_Seq();
ScalaJS.m.sjs_js_WrappedArray();
- var array$1 = [];
+ var b = new ScalaJS.c.sjs_js_WrappedArray().init___();
ScalaJS.uI(array["length"]);
var i = 0;
var len = ScalaJS.uI(array["length"]);
while ((i < len)) {
var index = i;
- var x$2 = array[index];
- var elem = ScalaJS.i.sci_StringLike$class__unwrapArg__sci_StringLike__O__O(this$2, x$2);
- array$1["push"](elem);
+ var arg1 = array[index];
+ var elem = f(arg1);
+ b.array$6["push"](elem);
i = ((1 + i) | 0)
};
var evidence$1 = ScalaJS.m.s_reflect_ClassTag().AnyRef$1;
- var result = evidence$1.newArray__I__O(ScalaJS.uI(array$1["length"]));
- var len$1 = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var i$1 = 0;
- var j = 0;
- var $$this$1 = ScalaJS.uI(array$1["length"]);
- var $$this$2 = (($$this$1 < len$1) ? $$this$1 : len$1);
- var that = ScalaJS.m.sr_ScalaRunTime().array$undlength__O__I(result);
- var end = (($$this$2 < that) ? $$this$2 : that);
- while ((i$1 < end)) {
- var jsx$2 = ScalaJS.m.sr_ScalaRunTime();
- var jsx$1 = j;
- var index$1 = i$1;
- jsx$2.array$undupdate__O__I__O__V(result, jsx$1, array$1[index$1]);
- i$1 = ((1 + i$1) | 0);
- j = ((1 + j) | 0)
- };
- return jsx$3.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(result, 1))
+ return jsx$1.format__T__AO__T(this$2.repr$1, ScalaJS.asArrayOf.O(ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O(b, evidence$1), 1))
});
ScalaJS.c.sjsr_RuntimeLong.prototype.intValue__I = (function() {
return this.toInt__I()
@@ -13983,6 +14113,9 @@ ScalaJS.c.sc_AbstractSet.prototype.toString__T = (function() {
ScalaJS.c.sc_AbstractSet.prototype.subsetOf__sc_GenSet__Z = (function(that) {
return this.forall__F1__Z(that)
});
+ScalaJS.c.sc_AbstractSet.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_SetLike$class__toBuffer__sc_SetLike__scm_Buffer(this)
+});
ScalaJS.c.sc_AbstractSet.prototype.hashCode__I = (function() {
var this$1 = ScalaJS.m.s_util_hashing_MurmurHash3();
var xs = this.seq__sc_Set();
@@ -15334,26 +15467,6 @@ ScalaJS.c.sci_List.prototype.toStream__sci_Stream = (function() {
ScalaJS.c.sci_List.prototype.hashCode__I = (function() {
return ScalaJS.m.s_util_hashing_MurmurHash3().seqHash__sc_Seq__I(this)
});
-ScalaJS.c.sci_List.prototype.map__F1__scg_CanBuildFrom__O = (function(f, bf) {
- if ((bf === ScalaJS.m.sci_List().ReusableCBFInstance$2)) {
- if ((this === ScalaJS.m.sci_Nil())) {
- return ScalaJS.m.sci_Nil()
- } else {
- var h = new ScalaJS.c.sci_$colon$colon().init___O__sci_List(f.apply__O__O(this.head__O()), ScalaJS.m.sci_Nil());
- var t = h;
- var rest = ScalaJS.as.sci_List(this.tail__O());
- while ((rest !== ScalaJS.m.sci_Nil())) {
- var nx = new ScalaJS.c.sci_$colon$colon().init___O__sci_List(f.apply__O__O(rest.head__O()), ScalaJS.m.sci_Nil());
- t.tl$5 = nx;
- t = nx;
- rest = ScalaJS.as.sci_List(rest.tail__O())
- };
- return h
- }
- } else {
- return ScalaJS.i.sc_TraversableLike$class__map__sc_TraversableLike__F1__scg_CanBuildFrom__O(this, f, bf)
- }
-});
ScalaJS.c.sci_List.prototype.stringPrefix__T = (function() {
return "List"
});
@@ -15695,6 +15808,9 @@ ScalaJS.c.sci_Range.prototype.foreach__F1__V = (function(f) {
ScalaJS.c.sci_Range.prototype.hasStub__p4__Z = (function() {
return (this.isInclusive__Z() || (!this.isExact__p4__Z()))
});
+ScalaJS.c.sci_Range.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.sci_Range.prototype.size__I = (function() {
return this.length__I()
});
@@ -16683,6 +16799,9 @@ ScalaJS.c.sci_Vector.prototype.display4__AO = (function() {
ScalaJS.c.sci_Vector.prototype.display2$und$eq__AO__V = (function(x$1) {
this.display2$4 = x$1
});
+ScalaJS.c.sci_Vector.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.sci_Vector.prototype.iterator__sc_Iterator = (function() {
return this.iterator__sci_VectorIterator()
});
@@ -16824,6 +16943,9 @@ ScalaJS.c.sci_WrappedString.prototype.toString__T = (function() {
ScalaJS.c.sci_WrappedString.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_IndexedSeqOptimized$class__foreach__sc_IndexedSeqOptimized__F1__V(this, f)
});
+ScalaJS.c.sci_WrappedString.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.sci_WrappedString.prototype.iterator__sc_Iterator = (function() {
return new ScalaJS.c.sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, ScalaJS.i.sjsr_RuntimeString$class__length__sjsr_RuntimeString__I(this.self$4))
});
@@ -16992,6 +17114,9 @@ ScalaJS.c.scm_AbstractSet.prototype.subsetOf__sc_GenSet__Z = (function(that) {
var this$1 = new ScalaJS.c.scm_FlatHashTable$$anon$1().init___scm_FlatHashTable(this);
return ScalaJS.i.sc_Iterator$class__forall__sc_Iterator__F1__Z(this$1, that)
});
+ScalaJS.c.scm_AbstractSet.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_SetLike$class__toBuffer__sc_SetLike__scm_Buffer(this)
+});
ScalaJS.c.scm_AbstractSet.prototype.sizeHintBounded__I__sc_TraversableLike__V = (function(size, boundingColl) {
ScalaJS.i.scm_Builder$class__sizeHintBounded__scm_Builder__I__sc_TraversableLike__V(this, size, boundingColl)
});
@@ -19106,6 +19231,9 @@ ScalaJS.c.scm_StringBuilder.prototype.companion__scg_GenericCompanion = (functio
ScalaJS.c.scm_StringBuilder.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_IndexedSeqOptimized$class__foreach__sc_IndexedSeqOptimized__F1__V(this, f)
});
+ScalaJS.c.scm_StringBuilder.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.scm_StringBuilder.prototype.result__O = (function() {
var this$1 = this.underlying$5;
return this$1.content$1
@@ -19266,6 +19394,9 @@ ScalaJS.c.scm_WrappedArray.prototype.companion__scg_GenericCompanion = (function
ScalaJS.c.scm_WrappedArray.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_IndexedSeqOptimized$class__foreach__sc_IndexedSeqOptimized__F1__V(this, f)
});
+ScalaJS.c.scm_WrappedArray.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.scm_WrappedArray.prototype.iterator__sc_Iterator = (function() {
return new ScalaJS.c.sc_IndexedSeqLike$Elements().init___sc_IndexedSeqLike__I__I(this, 0, this.length__I())
});
@@ -20089,6 +20220,9 @@ ScalaJS.c.scm_ArrayBuffer.prototype.companion__scg_GenericCompanion = (function(
ScalaJS.c.scm_ArrayBuffer.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.scm_ResizableArray$class__foreach__scm_ResizableArray__F1__V(this, f)
});
+ScalaJS.c.scm_ArrayBuffer.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.scm_ArrayBuffer.prototype.result__O = (function() {
return this
});
@@ -20235,6 +20369,10 @@ ScalaJS.h.scm_ListBuffer = (function() {
/*<skip>*/
});
ScalaJS.h.scm_ListBuffer.prototype = ScalaJS.c.scm_ListBuffer.prototype;
+ScalaJS.c.scm_ListBuffer.prototype.copyToArray__O__I__V = (function(xs, start) {
+ var this$1 = this.scala$collection$mutable$ListBuffer$$start$6;
+ ScalaJS.i.sc_TraversableOnce$class__copyToArray__sc_TraversableOnce__O__I__V(this$1, xs, start)
+});
ScalaJS.c.scm_ListBuffer.prototype.copy__p6__V = (function() {
if (this.scala$collection$mutable$ListBuffer$$start$6.isEmpty__Z()) {
return (void 0)
@@ -20312,6 +20450,12 @@ ScalaJS.c.scm_ListBuffer.prototype.foreach__F1__V = (function(f) {
these = ScalaJS.as.sci_List(these.tail__O())
}
});
+ScalaJS.c.scm_ListBuffer.prototype.toBuffer__scm_Buffer = (function() {
+ var this$1 = this.scala$collection$mutable$ListBuffer$$start$6;
+ var this$2 = ScalaJS.m.scm_ArrayBuffer();
+ var cbf = this$2.ReusableCBFInstance$2;
+ return ScalaJS.as.scm_Buffer(ScalaJS.i.sc_TraversableLike$class__to__sc_TraversableLike__scg_CanBuildFrom__O(this$1, cbf))
+});
ScalaJS.c.scm_ListBuffer.prototype.size__I = (function() {
return this.len$6
});
@@ -20358,12 +20502,20 @@ ScalaJS.c.scm_ListBuffer.prototype.$$plus$eq__O__scm_Builder = (function(elem) {
ScalaJS.c.scm_ListBuffer.prototype.sizeHint__I__V = (function(size) {
/*<skip>*/
});
+ScalaJS.c.scm_ListBuffer.prototype.copyToArray__O__I__I__V = (function(xs, start, len) {
+ var this$1 = this.scala$collection$mutable$ListBuffer$$start$6;
+ ScalaJS.i.sc_IterableLike$class__copyToArray__sc_IterableLike__O__I__I__V(this$1, xs, start, len)
+});
ScalaJS.c.scm_ListBuffer.prototype.clear__V = (function() {
this.scala$collection$mutable$ListBuffer$$start$6 = ScalaJS.m.sci_Nil();
this.last0$6 = null;
this.exported$6 = false;
this.len$6 = 0
});
+ScalaJS.c.scm_ListBuffer.prototype.toArray__s_reflect_ClassTag__O = (function(evidence$1) {
+ var this$1 = this.scala$collection$mutable$ListBuffer$$start$6;
+ return ScalaJS.i.sc_TraversableOnce$class__toArray__sc_TraversableOnce__s_reflect_ClassTag__O(this$1, evidence$1)
+});
ScalaJS.c.scm_ListBuffer.prototype.$$plus$plus$eq__sc_TraversableOnce__scm_ListBuffer = (function(xs) {
_$plus$plus$eq: while (true) {
var x1 = xs;
@@ -21538,6 +21690,9 @@ ScalaJS.c.sjs_js_WrappedArray.prototype.companion__scg_GenericCompanion = (funct
ScalaJS.c.sjs_js_WrappedArray.prototype.foreach__F1__V = (function(f) {
ScalaJS.i.sc_IndexedSeqOptimized$class__foreach__sc_IndexedSeqOptimized__F1__V(this, f)
});
+ScalaJS.c.sjs_js_WrappedArray.prototype.toBuffer__scm_Buffer = (function() {
+ return ScalaJS.i.sc_IndexedSeqLike$class__toBuffer__sc_IndexedSeqLike__scm_Buffer(this)
+});
ScalaJS.c.sjs_js_WrappedArray.prototype.result__O = (function() {
return this
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment