-
-
Save arsdragonfly/e75cbe174ac35125ef1ab5ad21a40d61 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[10:56:33 PM][spawn Spawn1] | |
[10:56:33 PM]room | |
[10:56:33 PM][room W4N8] | |
[10:56:33 PM]name | |
[10:56:33 PM]([(Right "Bella")] : Nil) | |
[10:56:33 PM][structure (controller) #946b07739d98cb7] | |
[10:56:33 PM]structureType | |
[10:56:33 PM][spawn Spawn1] | |
[10:56:33 PM]structureType | |
[10:56:33 PM][spawn Spawn1] | |
[10:56:33 PM]structureType | |
[10:56:33 PM][spawn Spawn1] | |
[10:56:33 PM]energy | |
[10:56:33 PM][spawn Spawn1] | |
[10:56:33 PM]energyCapacity | |
[10:56:33 PM][room W4N8] | |
[10:56:33 PM]controller | |
[10:56:33 PM][creep Bella] | |
[10:56:33 PM]room | |
[10:56:33 PM][creep Bella] | |
[10:56:33 PM]store | |
[10:56:33 PM]Error: This creep doesn't exist yet | |
at data (<runtime>:24497:19) | |
at Object.get [as store] (eval at <anonymous> (<runtime>:1093:9), <anonymous>:7:62) | |
at main:3433:17 | |
at main:3774:92 | |
at main:4415:84 | |
at main:2253:38 | |
at main:4472:86 | |
at main:1093:31 | |
at main:4474:22 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Generated by purs bundle 0.13.2 | |
var PS = {}; | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Alt"] = $PS["Control.Alt"] || {}; | |
var exports = $PS["Control.Alt"]; | |
var Alt = function (Functor0, alt) { | |
this.Functor0 = Functor0; | |
this.alt = alt; | |
}; | |
var alt = function (dict) { | |
return dict.alt; | |
}; | |
exports["Alt"] = Alt; | |
exports["alt"] = alt; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.arrayApply = function (fs) { | |
return function (xs) { | |
var l = fs.length; | |
var k = xs.length; | |
var result = new Array(l*k); | |
var n = 0; | |
for (var i = 0; i < l; i++) { | |
var f = fs[i]; | |
for (var j = 0; j < k; j++) { | |
result[n++] = f(xs[j]); | |
} | |
} | |
return result; | |
}; | |
}; | |
})(PS["Control.Apply"] = PS["Control.Apply"] || {}); | |
(function(exports) { | |
"use strict"; | |
exports.arrayMap = function (f) { | |
return function (arr) { | |
var l = arr.length; | |
var result = new Array(l); | |
for (var i = 0; i < l; i++) { | |
result[i] = f(arr[i]); | |
} | |
return result; | |
}; | |
}; | |
})(PS["Data.Functor"] = PS["Data.Functor"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Semigroupoid"] = $PS["Control.Semigroupoid"] || {}; | |
var exports = $PS["Control.Semigroupoid"]; | |
var Semigroupoid = function (compose) { | |
this.compose = compose; | |
}; | |
var semigroupoidFn = new Semigroupoid(function (f) { | |
return function (g) { | |
return function (x) { | |
return f(g(x)); | |
}; | |
}; | |
}); | |
var compose = function (dict) { | |
return dict.compose; | |
}; | |
exports["compose"] = compose; | |
exports["Semigroupoid"] = Semigroupoid; | |
exports["semigroupoidFn"] = semigroupoidFn; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Functor"] = $PS["Data.Functor"] || {}; | |
var exports = $PS["Data.Functor"]; | |
var $foreign = $PS["Data.Functor"]; | |
var Control_Semigroupoid = $PS["Control.Semigroupoid"]; | |
var Functor = function (map) { | |
this.map = map; | |
}; | |
var map = function (dict) { | |
return dict.map; | |
}; | |
var functorFn = new Functor(Control_Semigroupoid.compose(Control_Semigroupoid.semigroupoidFn)); | |
var functorArray = new Functor($foreign.arrayMap); | |
exports["Functor"] = Functor; | |
exports["map"] = map; | |
exports["functorFn"] = functorFn; | |
exports["functorArray"] = functorArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Apply"] = $PS["Control.Apply"] || {}; | |
var exports = $PS["Control.Apply"]; | |
var $foreign = $PS["Control.Apply"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Apply = function (Functor0, apply) { | |
this.Functor0 = Functor0; | |
this.apply = apply; | |
}; | |
var applyArray = new Apply(function () { | |
return Data_Functor.functorArray; | |
}, $foreign.arrayApply); | |
var apply = function (dict) { | |
return dict.apply; | |
}; | |
var lift2 = function (dictApply) { | |
return function (f) { | |
return function (a) { | |
return function (b) { | |
return apply(dictApply)(Data_Functor.map(dictApply.Functor0())(f)(a))(b); | |
}; | |
}; | |
}; | |
}; | |
exports["Apply"] = Apply; | |
exports["apply"] = apply; | |
exports["lift2"] = lift2; | |
exports["applyArray"] = applyArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Applicative"] = $PS["Control.Applicative"] || {}; | |
var exports = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Applicative = function (Apply0, pure) { | |
this.Apply0 = Apply0; | |
this.pure = pure; | |
}; | |
var pure = function (dict) { | |
return dict.pure; | |
}; | |
var liftA1 = function (dictApplicative) { | |
return function (f) { | |
return function (a) { | |
return Control_Apply.apply(dictApplicative.Apply0())(pure(dictApplicative)(f))(a); | |
}; | |
}; | |
}; | |
exports["Applicative"] = Applicative; | |
exports["pure"] = pure; | |
exports["liftA1"] = liftA1; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.arrayBind = function (arr) { | |
return function (f) { | |
var result = []; | |
for (var i = 0, l = arr.length; i < l; i++) { | |
Array.prototype.push.apply(result, f(arr[i])); | |
} | |
return result; | |
}; | |
}; | |
})(PS["Control.Bind"] = PS["Control.Bind"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Bind"] = $PS["Control.Bind"] || {}; | |
var exports = $PS["Control.Bind"]; | |
var $foreign = $PS["Control.Bind"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Bind = function (Apply0, bind) { | |
this.Apply0 = Apply0; | |
this.bind = bind; | |
}; | |
var bindArray = new Bind(function () { | |
return Control_Apply.applyArray; | |
}, $foreign.arrayBind); | |
var bind = function (dict) { | |
return dict.bind; | |
}; | |
exports["Bind"] = Bind; | |
exports["bind"] = bind; | |
exports["bindArray"] = bindArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Category"] = $PS["Control.Category"] || {}; | |
var exports = $PS["Control.Category"]; | |
var Control_Semigroupoid = $PS["Control.Semigroupoid"]; | |
var Category = function (Semigroupoid0, identity) { | |
this.Semigroupoid0 = Semigroupoid0; | |
this.identity = identity; | |
}; | |
var identity = function (dict) { | |
return dict.identity; | |
}; | |
var categoryFn = new Category(function () { | |
return Control_Semigroupoid.semigroupoidFn; | |
}, function (x) { | |
return x; | |
}); | |
exports["Category"] = Category; | |
exports["identity"] = identity; | |
exports["categoryFn"] = categoryFn; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Lazy"] = $PS["Control.Lazy"] || {}; | |
var exports = $PS["Control.Lazy"]; | |
var Lazy = function (defer) { | |
this.defer = defer; | |
}; | |
var defer = function (dict) { | |
return dict.defer; | |
}; | |
exports["defer"] = defer; | |
exports["Lazy"] = Lazy; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Monad"] = $PS["Control.Monad"] || {}; | |
var exports = $PS["Control.Monad"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Monad = function (Applicative0, Bind1) { | |
this.Applicative0 = Applicative0; | |
this.Bind1 = Bind1; | |
}; | |
var liftM1 = function (dictMonad) { | |
return function (f) { | |
return function (a) { | |
return Control_Bind.bind(dictMonad.Bind1())(a)(function (v) { | |
return Control_Applicative.pure(dictMonad.Applicative0())(f(v)); | |
}); | |
}; | |
}; | |
}; | |
var ap = function (dictMonad) { | |
return function (f) { | |
return function (a) { | |
return Control_Bind.bind(dictMonad.Bind1())(f)(function (v) { | |
return Control_Bind.bind(dictMonad.Bind1())(a)(function (v1) { | |
return Control_Applicative.pure(dictMonad.Applicative0())(v(v1)); | |
}); | |
}); | |
}; | |
}; | |
}; | |
exports["Monad"] = Monad; | |
exports["liftM1"] = liftM1; | |
exports["ap"] = ap; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Monad.Error.Class"] = $PS["Control.Monad.Error.Class"] || {}; | |
var exports = $PS["Control.Monad.Error.Class"]; | |
var MonadThrow = function (Monad0, throwError) { | |
this.Monad0 = Monad0; | |
this.throwError = throwError; | |
}; | |
var throwError = function (dict) { | |
return dict.throwError; | |
}; | |
exports["throwError"] = throwError; | |
exports["MonadThrow"] = MonadThrow; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.showIntImpl = function (n) { | |
return n.toString(); | |
}; | |
exports.showStringImpl = function (s) { | |
var l = s.length; | |
return "\"" + s.replace( | |
/[\0-\x1F\x7F"\\]/g, // eslint-disable-line no-control-regex | |
function (c, i) { | |
switch (c) { | |
case "\"": | |
case "\\": | |
return "\\" + c; | |
case "\x07": return "\\a"; | |
case "\b": return "\\b"; | |
case "\f": return "\\f"; | |
case "\n": return "\\n"; | |
case "\r": return "\\r"; | |
case "\t": return "\\t"; | |
case "\v": return "\\v"; | |
} | |
var k = i + 1; | |
var empty = k < l && s[k] >= "0" && s[k] <= "9" ? "\\&" : ""; | |
return "\\" + c.charCodeAt(0).toString(10) + empty; | |
} | |
) + "\""; | |
}; | |
exports.showArrayImpl = function (f) { | |
return function (xs) { | |
var ss = []; | |
for (var i = 0, l = xs.length; i < l; i++) { | |
ss[i] = f(xs[i]); | |
} | |
return "[" + ss.join(",") + "]"; | |
}; | |
}; | |
exports.join = function (separator) { | |
return function (xs) { | |
return xs.join(separator); | |
}; | |
}; | |
})(PS["Data.Show"] = PS["Data.Show"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Show"] = $PS["Data.Show"] || {}; | |
var exports = $PS["Data.Show"]; | |
var $foreign = $PS["Data.Show"]; | |
var Show = function (show) { | |
this.show = show; | |
}; | |
var showString = new Show($foreign.showStringImpl); | |
var showInt = new Show($foreign.showIntImpl); | |
var show = function (dict) { | |
return dict.show; | |
}; | |
var showArray = function (dictShow) { | |
return new Show($foreign.showArrayImpl(show(dictShow))); | |
}; | |
exports["Show"] = Show; | |
exports["show"] = show; | |
exports["showInt"] = showInt; | |
exports["showString"] = showString; | |
exports["showArray"] = showArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Either"] = $PS["Data.Either"] || {}; | |
var exports = $PS["Data.Either"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Left = (function () { | |
function Left(value0) { | |
this.value0 = value0; | |
}; | |
Left.create = function (value0) { | |
return new Left(value0); | |
}; | |
return Left; | |
})(); | |
var Right = (function () { | |
function Right(value0) { | |
this.value0 = value0; | |
}; | |
Right.create = function (value0) { | |
return new Right(value0); | |
}; | |
return Right; | |
})(); | |
var showEither = function (dictShow) { | |
return function (dictShow1) { | |
return new Data_Show.Show(function (v) { | |
if (v instanceof Left) { | |
return "(Left " + (Data_Show.show(dictShow)(v.value0) + ")"); | |
}; | |
if (v instanceof Right) { | |
return "(Right " + (Data_Show.show(dictShow1)(v.value0) + ")"); | |
}; | |
throw new Error("Failed pattern match at Data.Either (line 163, column 1 - line 165, column 46): " + [ v.constructor.name ]); | |
}); | |
}; | |
}; | |
var functorEither = new Data_Functor.Functor(function (f) { | |
return function (m) { | |
if (m instanceof Left) { | |
return new Left(m.value0); | |
}; | |
if (m instanceof Right) { | |
return new Right(f(m.value0)); | |
}; | |
throw new Error("Failed pattern match at Data.Either (line 38, column 1 - line 38, column 52): " + [ m.constructor.name ]); | |
}; | |
}); | |
var fromRight = function (dictPartial) { | |
return function (v) { | |
if (v instanceof Right) { | |
return v.value0; | |
}; | |
throw new Error("Failed pattern match at Data.Either (line 261, column 1 - line 261, column 52): " + [ v.constructor.name ]); | |
}; | |
}; | |
var either = function (v) { | |
return function (v1) { | |
return function (v2) { | |
if (v2 instanceof Left) { | |
return v(v2.value0); | |
}; | |
if (v2 instanceof Right) { | |
return v1(v2.value0); | |
}; | |
throw new Error("Failed pattern match at Data.Either (line 238, column 1 - line 238, column 64): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); | |
}; | |
}; | |
}; | |
exports["Left"] = Left; | |
exports["Right"] = Right; | |
exports["either"] = either; | |
exports["fromRight"] = fromRight; | |
exports["functorEither"] = functorEither; | |
exports["showEither"] = showEither; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Monad.Except.Trans"] = $PS["Control.Monad.Except.Trans"] || {}; | |
var exports = $PS["Control.Monad.Except.Trans"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Monad = $PS["Control.Monad"]; | |
var Control_Monad_Error_Class = $PS["Control.Monad.Error.Class"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var ExceptT = function (x) { | |
return x; | |
}; | |
var runExceptT = function (v) { | |
return v; | |
}; | |
var mapExceptT = function (f) { | |
return function (v) { | |
return f(v); | |
}; | |
}; | |
var functorExceptT = function (dictFunctor) { | |
return new Data_Functor.Functor(function (f) { | |
return mapExceptT(Data_Functor.map(dictFunctor)(Data_Functor.map(Data_Either.functorEither)(f))); | |
}); | |
}; | |
var monadExceptT = function (dictMonad) { | |
return new Control_Monad.Monad(function () { | |
return applicativeExceptT(dictMonad); | |
}, function () { | |
return bindExceptT(dictMonad); | |
}); | |
}; | |
var bindExceptT = function (dictMonad) { | |
return new Control_Bind.Bind(function () { | |
return applyExceptT(dictMonad); | |
}, function (v) { | |
return function (k) { | |
return Control_Bind.bind(dictMonad.Bind1())(v)(Data_Either.either((function () { | |
var $98 = Control_Applicative.pure(dictMonad.Applicative0()); | |
return function ($99) { | |
return $98(Data_Either.Left.create($99)); | |
}; | |
})())(function (a) { | |
var v1 = k(a); | |
return v1; | |
})); | |
}; | |
}); | |
}; | |
var applyExceptT = function (dictMonad) { | |
return new Control_Apply.Apply(function () { | |
return functorExceptT(((dictMonad.Bind1()).Apply0()).Functor0()); | |
}, Control_Monad.ap(monadExceptT(dictMonad))); | |
}; | |
var applicativeExceptT = function (dictMonad) { | |
return new Control_Applicative.Applicative(function () { | |
return applyExceptT(dictMonad); | |
}, (function () { | |
var $100 = Control_Applicative.pure(dictMonad.Applicative0()); | |
return function ($101) { | |
return ExceptT($100(Data_Either.Right.create($101))); | |
}; | |
})()); | |
}; | |
var monadThrowExceptT = function (dictMonad) { | |
return new Control_Monad_Error_Class.MonadThrow(function () { | |
return monadExceptT(dictMonad); | |
}, (function () { | |
var $110 = Control_Applicative.pure(dictMonad.Applicative0()); | |
return function ($111) { | |
return ExceptT($110(Data_Either.Left.create($111))); | |
}; | |
})()); | |
}; | |
exports["ExceptT"] = ExceptT; | |
exports["runExceptT"] = runExceptT; | |
exports["mapExceptT"] = mapExceptT; | |
exports["functorExceptT"] = functorExceptT; | |
exports["applyExceptT"] = applyExceptT; | |
exports["applicativeExceptT"] = applicativeExceptT; | |
exports["bindExceptT"] = bindExceptT; | |
exports["monadExceptT"] = monadExceptT; | |
exports["monadThrowExceptT"] = monadThrowExceptT; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.boolConj = function (b1) { | |
return function (b2) { | |
return b1 && b2; | |
}; | |
}; | |
exports.boolDisj = function (b1) { | |
return function (b2) { | |
return b1 || b2; | |
}; | |
}; | |
exports.boolNot = function (b) { | |
return !b; | |
}; | |
})(PS["Data.HeytingAlgebra"] = PS["Data.HeytingAlgebra"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.HeytingAlgebra"] = $PS["Data.HeytingAlgebra"] || {}; | |
var exports = $PS["Data.HeytingAlgebra"]; | |
var $foreign = $PS["Data.HeytingAlgebra"]; | |
var HeytingAlgebra = function (conj, disj, ff, implies, not, tt) { | |
this.conj = conj; | |
this.disj = disj; | |
this.ff = ff; | |
this.implies = implies; | |
this.not = not; | |
this.tt = tt; | |
}; | |
var tt = function (dict) { | |
return dict.tt; | |
}; | |
var not = function (dict) { | |
return dict.not; | |
}; | |
var implies = function (dict) { | |
return dict.implies; | |
}; | |
var ff = function (dict) { | |
return dict.ff; | |
}; | |
var disj = function (dict) { | |
return dict.disj; | |
}; | |
var heytingAlgebraBoolean = new HeytingAlgebra($foreign.boolConj, $foreign.boolDisj, false, function (a) { | |
return function (b) { | |
return disj(heytingAlgebraBoolean)(not(heytingAlgebraBoolean)(a))(b); | |
}; | |
}, $foreign.boolNot, true); | |
var conj = function (dict) { | |
return dict.conj; | |
}; | |
exports["HeytingAlgebra"] = HeytingAlgebra; | |
exports["tt"] = tt; | |
exports["ff"] = ff; | |
exports["implies"] = implies; | |
exports["conj"] = conj; | |
exports["disj"] = disj; | |
exports["not"] = not; | |
exports["heytingAlgebraBoolean"] = heytingAlgebraBoolean; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.concatString = function (s1) { | |
return function (s2) { | |
return s1 + s2; | |
}; | |
}; | |
exports.concatArray = function (xs) { | |
return function (ys) { | |
if (xs.length === 0) return ys; | |
if (ys.length === 0) return xs; | |
return xs.concat(ys); | |
}; | |
}; | |
})(PS["Data.Semigroup"] = PS["Data.Semigroup"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Semigroup"] = $PS["Data.Semigroup"] || {}; | |
var exports = $PS["Data.Semigroup"]; | |
var $foreign = $PS["Data.Semigroup"]; | |
var Semigroup = function (append) { | |
this.append = append; | |
}; | |
var semigroupString = new Semigroup($foreign.concatString); | |
var semigroupArray = new Semigroup($foreign.concatArray); | |
var append = function (dict) { | |
return dict.append; | |
}; | |
exports["Semigroup"] = Semigroup; | |
exports["append"] = append; | |
exports["semigroupString"] = semigroupString; | |
exports["semigroupArray"] = semigroupArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Monoid"] = $PS["Data.Monoid"] || {}; | |
var exports = $PS["Data.Monoid"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Monoid = function (Semigroup0, mempty) { | |
this.Semigroup0 = Semigroup0; | |
this.mempty = mempty; | |
}; | |
var monoidString = new Monoid(function () { | |
return Data_Semigroup.semigroupString; | |
}, ""); | |
var monoidArray = new Monoid(function () { | |
return Data_Semigroup.semigroupArray; | |
}, [ ]); | |
var mempty = function (dict) { | |
return dict.mempty; | |
}; | |
exports["Monoid"] = Monoid; | |
exports["mempty"] = mempty; | |
exports["monoidString"] = monoidString; | |
exports["monoidArray"] = monoidArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Monoid.Disj"] = $PS["Data.Monoid.Disj"] || {}; | |
var exports = $PS["Data.Monoid.Disj"]; | |
var Data_HeytingAlgebra = $PS["Data.HeytingAlgebra"]; | |
var Data_Monoid = $PS["Data.Monoid"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Disj = function (x) { | |
return x; | |
}; | |
var semigroupDisj = function (dictHeytingAlgebra) { | |
return new Data_Semigroup.Semigroup(function (v) { | |
return function (v1) { | |
return Data_HeytingAlgebra.disj(dictHeytingAlgebra)(v)(v1); | |
}; | |
}); | |
}; | |
var monoidDisj = function (dictHeytingAlgebra) { | |
return new Data_Monoid.Monoid(function () { | |
return semigroupDisj(dictHeytingAlgebra); | |
}, Data_HeytingAlgebra.ff(dictHeytingAlgebra)); | |
}; | |
exports["Disj"] = Disj; | |
exports["semigroupDisj"] = semigroupDisj; | |
exports["monoidDisj"] = monoidDisj; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Newtype"] = $PS["Data.Newtype"] || {}; | |
var exports = $PS["Data.Newtype"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Monoid_Disj = $PS["Data.Monoid.Disj"]; | |
var Newtype = function (unwrap, wrap) { | |
this.unwrap = unwrap; | |
this.wrap = wrap; | |
}; | |
var wrap = function (dict) { | |
return dict.wrap; | |
}; | |
var unwrap = function (dict) { | |
return dict.unwrap; | |
}; | |
var newtypeDisj = new Newtype(function (v) { | |
return v; | |
}, Data_Monoid_Disj.Disj); | |
var alaF = function (dictFunctor) { | |
return function (dictFunctor1) { | |
return function (dictNewtype) { | |
return function (dictNewtype1) { | |
return function (v) { | |
return function (f) { | |
var $96 = Data_Functor.map(dictFunctor1)(unwrap(dictNewtype1)); | |
var $97 = Data_Functor.map(dictFunctor)(wrap(dictNewtype)); | |
return function ($98) { | |
return $96(f($97($98))); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
exports["unwrap"] = unwrap; | |
exports["wrap"] = wrap; | |
exports["Newtype"] = Newtype; | |
exports["alaF"] = alaF; | |
exports["newtypeDisj"] = newtypeDisj; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Identity"] = $PS["Data.Identity"] || {}; | |
var exports = $PS["Data.Identity"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Monad = $PS["Control.Monad"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Newtype = $PS["Data.Newtype"]; | |
var Identity = function (x) { | |
return x; | |
}; | |
var newtypeIdentity = new Data_Newtype.Newtype(function (n) { | |
return n; | |
}, Identity); | |
var functorIdentity = new Data_Functor.Functor(function (f) { | |
return function (m) { | |
return f(m); | |
}; | |
}); | |
var applyIdentity = new Control_Apply.Apply(function () { | |
return functorIdentity; | |
}, function (v) { | |
return function (v1) { | |
return v(v1); | |
}; | |
}); | |
var bindIdentity = new Control_Bind.Bind(function () { | |
return applyIdentity; | |
}, function (v) { | |
return function (f) { | |
return f(v); | |
}; | |
}); | |
var applicativeIdentity = new Control_Applicative.Applicative(function () { | |
return applyIdentity; | |
}, Identity); | |
var monadIdentity = new Control_Monad.Monad(function () { | |
return applicativeIdentity; | |
}, function () { | |
return bindIdentity; | |
}); | |
exports["Identity"] = Identity; | |
exports["newtypeIdentity"] = newtypeIdentity; | |
exports["functorIdentity"] = functorIdentity; | |
exports["applyIdentity"] = applyIdentity; | |
exports["applicativeIdentity"] = applicativeIdentity; | |
exports["bindIdentity"] = bindIdentity; | |
exports["monadIdentity"] = monadIdentity; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Monad.Except"] = $PS["Control.Monad.Except"] || {}; | |
var exports = $PS["Control.Monad.Except"]; | |
var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; | |
var Data_Identity = $PS["Data.Identity"]; | |
var Data_Newtype = $PS["Data.Newtype"]; | |
var runExcept = (function () { | |
var $0 = Data_Newtype.unwrap(Data_Identity.newtypeIdentity); | |
return function ($1) { | |
return $0(Control_Monad_Except_Trans.runExceptT($1)); | |
}; | |
})(); | |
exports["runExcept"] = runExcept; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Control.Plus"] = $PS["Control.Plus"] || {}; | |
var exports = $PS["Control.Plus"]; | |
var Plus = function (Alt0, empty) { | |
this.Alt0 = Alt0; | |
this.empty = empty; | |
}; | |
var empty = function (dict) { | |
return dict.empty; | |
}; | |
exports["Plus"] = Plus; | |
exports["empty"] = empty; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
function id(x) { | |
return x; | |
} | |
exports.fromString = id; | |
exports.fromObject = id; | |
function isArray(a) { | |
return Object.prototype.toString.call(a) === "[object Array]"; | |
} | |
})(PS["Data.Argonaut.Core"] = PS["Data.Argonaut.Core"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Argonaut.Core"] = $PS["Data.Argonaut.Core"] || {}; | |
var exports = $PS["Data.Argonaut.Core"]; | |
var $foreign = $PS["Data.Argonaut.Core"]; | |
exports["fromString"] = $foreign.fromString; | |
exports["fromObject"] = $foreign.fromObject; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Symbol"] = $PS["Data.Symbol"] || {}; | |
var exports = $PS["Data.Symbol"]; | |
var SProxy = (function () { | |
function SProxy() { | |
}; | |
SProxy.value = new SProxy(); | |
return SProxy; | |
})(); | |
var IsSymbol = function (reflectSymbol) { | |
this.reflectSymbol = reflectSymbol; | |
}; | |
var reflectSymbol = function (dict) { | |
return dict.reflectSymbol; | |
}; | |
exports["IsSymbol"] = IsSymbol; | |
exports["reflectSymbol"] = reflectSymbol; | |
exports["SProxy"] = SProxy; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports._copyST = function (m) { | |
return function () { | |
var r = {}; | |
for (var k in m) { | |
if (hasOwnProperty.call(m, k)) { | |
r[k] = m[k]; | |
} | |
} | |
return r; | |
}; | |
}; | |
exports.empty = {}; | |
exports.runST = function (f) { | |
return f(); | |
}; | |
function toArrayWithKey(f) { | |
return function (m) { | |
var r = []; | |
for (var k in m) { | |
if (hasOwnProperty.call(m, k)) { | |
r.push(f(k)(m[k])); | |
} | |
} | |
return r; | |
}; | |
} | |
})(PS["Foreign.Object"] = PS["Foreign.Object"] || {}); | |
(function(exports) { | |
"use strict"; | |
exports.poke = function (k) { | |
return function (v) { | |
return function (m) { | |
return function () { | |
m[k] = v; | |
return m; | |
}; | |
}; | |
}; | |
}; | |
})(PS["Foreign.Object.ST"] = PS["Foreign.Object.ST"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Foreign.Object.ST"] = $PS["Foreign.Object.ST"] || {}; | |
var exports = $PS["Foreign.Object.ST"]; | |
var $foreign = $PS["Foreign.Object.ST"]; | |
exports["poke"] = $foreign.poke; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Foreign.Object"] = $PS["Foreign.Object"] || {}; | |
var exports = $PS["Foreign.Object"]; | |
var $foreign = $PS["Foreign.Object"]; | |
var Foreign_Object_ST = $PS["Foreign.Object.ST"]; | |
var thawST = $foreign["_copyST"]; | |
var mutate = function (f) { | |
return function (m) { | |
return $foreign.runST(function __do() { | |
var v = thawST(m)(); | |
var v1 = f(v)(); | |
return v; | |
}); | |
}; | |
}; | |
var insert = function (k) { | |
return function (v) { | |
return mutate(Foreign_Object_ST.poke(k)(v)); | |
}; | |
}; | |
exports["insert"] = insert; | |
exports["thawST"] = thawST; | |
exports["empty"] = $foreign.empty; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unsafeGet = function (label) { | |
return function (rec) { | |
return rec[label]; | |
}; | |
}; | |
})(PS["Record.Unsafe"] = PS["Record.Unsafe"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Record.Unsafe"] = $PS["Record.Unsafe"] || {}; | |
var exports = $PS["Record.Unsafe"]; | |
var $foreign = $PS["Record.Unsafe"]; | |
exports["unsafeGet"] = $foreign.unsafeGet; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Record"] = $PS["Record"] || {}; | |
var exports = $PS["Record"]; | |
var Data_Symbol = $PS["Data.Symbol"]; | |
var Record_Unsafe = $PS["Record.Unsafe"]; | |
var get = function (dictIsSymbol) { | |
return function (dictCons) { | |
return function (l) { | |
return function (r) { | |
return Record_Unsafe.unsafeGet(Data_Symbol.reflectSymbol(dictIsSymbol)(l))(r); | |
}; | |
}; | |
}; | |
}; | |
exports["get"] = get; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Type.Data.RowList"] = $PS["Type.Data.RowList"] || {}; | |
var exports = $PS["Type.Data.RowList"]; | |
var RLProxy = (function () { | |
function RLProxy() { | |
}; | |
RLProxy.value = new RLProxy(); | |
return RLProxy; | |
})(); | |
exports["RLProxy"] = RLProxy; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Argonaut.Encode.Class"] = $PS["Data.Argonaut.Encode.Class"] || {}; | |
var exports = $PS["Data.Argonaut.Encode.Class"]; | |
var Data_Argonaut_Core = $PS["Data.Argonaut.Core"]; | |
var Data_Symbol = $PS["Data.Symbol"]; | |
var Foreign_Object = $PS["Foreign.Object"]; | |
var Record = $PS["Record"]; | |
var Type_Data_RowList = $PS["Type.Data.RowList"]; | |
var GEncodeJson = function (gEncodeJson) { | |
this.gEncodeJson = gEncodeJson; | |
}; | |
var EncodeJson = function (encodeJson) { | |
this.encodeJson = encodeJson; | |
}; | |
var gEncodeJsonNil = new GEncodeJson(function (v) { | |
return function (v1) { | |
return Foreign_Object.empty; | |
}; | |
}); | |
var gEncodeJson = function (dict) { | |
return dict.gEncodeJson; | |
}; | |
var encodeRecord = function (dictGEncodeJson) { | |
return function (dictRowToList) { | |
return new EncodeJson(function (rec) { | |
return Data_Argonaut_Core.fromObject(gEncodeJson(dictGEncodeJson)(rec)(Type_Data_RowList.RLProxy.value)); | |
}); | |
}; | |
}; | |
var encodeJsonJString = new EncodeJson(Data_Argonaut_Core.fromString); | |
var encodeJson = function (dict) { | |
return dict.encodeJson; | |
}; | |
var gEncodeJsonCons = function (dictEncodeJson) { | |
return function (dictGEncodeJson) { | |
return function (dictIsSymbol) { | |
return function (dictCons) { | |
return new GEncodeJson(function (row) { | |
return function (v) { | |
return Foreign_Object.insert(Data_Symbol.reflectSymbol(dictIsSymbol)(Data_Symbol.SProxy.value))(encodeJson(dictEncodeJson)(Record.get(dictIsSymbol)(dictCons)(Data_Symbol.SProxy.value)(row)))(gEncodeJson(dictGEncodeJson)(row)(Type_Data_RowList.RLProxy.value)); | |
}; | |
}); | |
}; | |
}; | |
}; | |
}; | |
exports["encodeJson"] = encodeJson; | |
exports["gEncodeJson"] = gEncodeJson; | |
exports["EncodeJson"] = EncodeJson; | |
exports["GEncodeJson"] = GEncodeJson; | |
exports["encodeJsonJString"] = encodeJsonJString; | |
exports["encodeRecord"] = encodeRecord; | |
exports["gEncodeJsonNil"] = gEncodeJsonNil; | |
exports["gEncodeJsonCons"] = gEncodeJsonCons; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
var replicateFill = function (count) { | |
return function (value) { | |
if (count < 1) { | |
return []; | |
} | |
var result = new Array(count); | |
return result.fill(value); | |
}; | |
}; | |
var replicatePolyfill = function (count) { | |
return function (value) { | |
var result = []; | |
var n = 0; | |
for (var i = 0; i < count; i++) { | |
result[n++] = value; | |
} | |
return result; | |
}; | |
}; | |
// In browsers that have Array.prototype.fill we use it, as it's faster. | |
exports.replicate = typeof Array.prototype.fill === "function" ? replicateFill : replicatePolyfill; | |
//------------------------------------------------------------------------------ | |
// Array size ------------------------------------------------------------------ | |
//------------------------------------------------------------------------------ | |
exports.length = function (xs) { | |
return xs.length; | |
}; | |
//------------------------------------------------------------------------------ | |
// Indexed operations ---------------------------------------------------------- | |
//------------------------------------------------------------------------------ | |
exports.indexImpl = function (just) { | |
return function (nothing) { | |
return function (xs) { | |
return function (i) { | |
return i < 0 || i >= xs.length ? nothing : just(xs[i]); | |
}; | |
}; | |
}; | |
}; | |
exports.concat = function (xss) { | |
if (xss.length <= 10000) { | |
// This method is faster, but it crashes on big arrays. | |
// So we use it when can and fallback to simple variant otherwise. | |
return Array.prototype.concat.apply([], xss); | |
} | |
var result = []; | |
for (var i = 0, l = xss.length; i < l; i++) { | |
var xs = xss[i]; | |
for (var j = 0, m = xs.length; j < m; j++) { | |
result.push(xs[j]); | |
} | |
} | |
return result; | |
}; | |
exports.filter = function (f) { | |
return function (xs) { | |
return xs.filter(f); | |
}; | |
}; | |
//------------------------------------------------------------------------------ | |
// Zipping --------------------------------------------------------------------- | |
//------------------------------------------------------------------------------ | |
exports.zipWith = function (f) { | |
return function (xs) { | |
return function (ys) { | |
var l = xs.length < ys.length ? xs.length : ys.length; | |
var result = new Array(l); | |
for (var i = 0; i < l; i++) { | |
result[i] = f(xs[i])(ys[i]); | |
} | |
return result; | |
}; | |
}; | |
}; | |
})(PS["Data.Array"] = PS["Data.Array"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Function"] = $PS["Data.Function"] || {}; | |
var exports = $PS["Data.Function"]; | |
var flip = function (f) { | |
return function (b) { | |
return function (a) { | |
return f(a)(b); | |
}; | |
}; | |
}; | |
var $$const = function (a) { | |
return function (v) { | |
return a; | |
}; | |
}; | |
exports["flip"] = flip; | |
exports["const"] = $$const; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Maybe"] = $PS["Data.Maybe"] || {}; | |
var exports = $PS["Data.Maybe"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Nothing = (function () { | |
function Nothing() { | |
}; | |
Nothing.value = new Nothing(); | |
return Nothing; | |
})(); | |
var Just = (function () { | |
function Just(value0) { | |
this.value0 = value0; | |
}; | |
Just.create = function (value0) { | |
return new Just(value0); | |
}; | |
return Just; | |
})(); | |
var maybe = function (v) { | |
return function (v1) { | |
return function (v2) { | |
if (v2 instanceof Nothing) { | |
return v; | |
}; | |
if (v2 instanceof Just) { | |
return v1(v2.value0); | |
}; | |
throw new Error("Failed pattern match at Data.Maybe (line 217, column 1 - line 217, column 51): " + [ v.constructor.name, v1.constructor.name, v2.constructor.name ]); | |
}; | |
}; | |
}; | |
var isNothing = maybe(true)(Data_Function["const"](false)); | |
var isJust = maybe(false)(Data_Function["const"](true)); | |
var fromJust = function (dictPartial) { | |
return function (v) { | |
if (v instanceof Just) { | |
return v.value0; | |
}; | |
throw new Error("Failed pattern match at Data.Maybe (line 268, column 1 - line 268, column 46): " + [ v.constructor.name ]); | |
}; | |
}; | |
exports["Nothing"] = Nothing; | |
exports["Just"] = Just; | |
exports["maybe"] = maybe; | |
exports["isJust"] = isJust; | |
exports["isNothing"] = isNothing; | |
exports["fromJust"] = fromJust; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Array"] = $PS["Data.Array"] || {}; | |
var exports = $PS["Data.Array"]; | |
var $foreign = $PS["Data.Array"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Category = $PS["Control.Category"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var singleton = function (a) { | |
return [ a ]; | |
}; | |
var $$null = function (xs) { | |
return $foreign.length(xs) === 0; | |
}; | |
var index = $foreign.indexImpl(Data_Maybe.Just.create)(Data_Maybe.Nothing.value); | |
var concatMap = Data_Function.flip(Control_Bind.bind(Control_Bind.bindArray)); | |
var mapMaybe = function (f) { | |
return concatMap((function () { | |
var $123 = Data_Maybe.maybe([ ])(singleton); | |
return function ($124) { | |
return $123(f($124)); | |
}; | |
})()); | |
}; | |
var catMaybes = mapMaybe(Control_Category.identity(Control_Category.categoryFn)); | |
exports["singleton"] = singleton; | |
exports["null"] = $$null; | |
exports["index"] = index; | |
exports["concatMap"] = concatMap; | |
exports["mapMaybe"] = mapMaybe; | |
exports["catMaybes"] = catMaybes; | |
exports["replicate"] = $foreign.replicate; | |
exports["length"] = $foreign.length; | |
exports["concat"] = $foreign.concat; | |
exports["filter"] = $foreign.filter; | |
exports["zipWith"] = $foreign.zipWith; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Boolean"] = $PS["Data.Boolean"] || {}; | |
var exports = $PS["Data.Boolean"]; | |
var otherwise = true; | |
exports["otherwise"] = otherwise; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.topInt = 2147483647; | |
exports.bottomInt = -2147483648; | |
exports.topChar = String.fromCharCode(65535); | |
exports.bottomChar = String.fromCharCode(0); | |
})(PS["Data.Bounded"] = PS["Data.Bounded"] || {}); | |
(function(exports) { | |
"use strict"; | |
var unsafeCompareImpl = function (lt) { | |
return function (eq) { | |
return function (gt) { | |
return function (x) { | |
return function (y) { | |
return x < y ? lt : x === y ? eq : gt; | |
}; | |
}; | |
}; | |
}; | |
}; | |
exports.ordIntImpl = unsafeCompareImpl; | |
exports.ordStringImpl = unsafeCompareImpl; | |
exports.ordCharImpl = unsafeCompareImpl; | |
})(PS["Data.Ord"] = PS["Data.Ord"] || {}); | |
(function(exports) { | |
"use strict"; | |
var refEq = function (r1) { | |
return function (r2) { | |
return r1 === r2; | |
}; | |
}; | |
exports.eqIntImpl = refEq; | |
exports.eqCharImpl = refEq; | |
exports.eqStringImpl = refEq; | |
})(PS["Data.Eq"] = PS["Data.Eq"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Eq"] = $PS["Data.Eq"] || {}; | |
var exports = $PS["Data.Eq"]; | |
var $foreign = $PS["Data.Eq"]; | |
var Eq = function (eq) { | |
this.eq = eq; | |
}; | |
var eqString = new Eq($foreign.eqStringImpl); | |
var eqInt = new Eq($foreign.eqIntImpl); | |
var eqChar = new Eq($foreign.eqCharImpl); | |
var eq = function (dict) { | |
return dict.eq; | |
}; | |
exports["Eq"] = Eq; | |
exports["eq"] = eq; | |
exports["eqInt"] = eqInt; | |
exports["eqChar"] = eqChar; | |
exports["eqString"] = eqString; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Ordering"] = $PS["Data.Ordering"] || {}; | |
var exports = $PS["Data.Ordering"]; | |
var LT = (function () { | |
function LT() { | |
}; | |
LT.value = new LT(); | |
return LT; | |
})(); | |
var GT = (function () { | |
function GT() { | |
}; | |
GT.value = new GT(); | |
return GT; | |
})(); | |
var EQ = (function () { | |
function EQ() { | |
}; | |
EQ.value = new EQ(); | |
return EQ; | |
})(); | |
exports["LT"] = LT; | |
exports["GT"] = GT; | |
exports["EQ"] = EQ; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Ord"] = $PS["Data.Ord"] || {}; | |
var exports = $PS["Data.Ord"]; | |
var $foreign = $PS["Data.Ord"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Ordering = $PS["Data.Ordering"]; | |
var Ord = function (Eq0, compare) { | |
this.Eq0 = Eq0; | |
this.compare = compare; | |
}; | |
var ordString = new Ord(function () { | |
return Data_Eq.eqString; | |
}, $foreign.ordStringImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); | |
var ordInt = new Ord(function () { | |
return Data_Eq.eqInt; | |
}, $foreign.ordIntImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); | |
var ordChar = new Ord(function () { | |
return Data_Eq.eqChar; | |
}, $foreign.ordCharImpl(Data_Ordering.LT.value)(Data_Ordering.EQ.value)(Data_Ordering.GT.value)); | |
var compare = function (dict) { | |
return dict.compare; | |
}; | |
exports["Ord"] = Ord; | |
exports["compare"] = compare; | |
exports["ordInt"] = ordInt; | |
exports["ordString"] = ordString; | |
exports["ordChar"] = ordChar; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Bounded"] = $PS["Data.Bounded"] || {}; | |
var exports = $PS["Data.Bounded"]; | |
var $foreign = $PS["Data.Bounded"]; | |
var Data_Ord = $PS["Data.Ord"]; | |
var Bounded = function (Ord0, bottom, top) { | |
this.Ord0 = Ord0; | |
this.bottom = bottom; | |
this.top = top; | |
}; | |
var top = function (dict) { | |
return dict.top; | |
}; | |
var boundedInt = new Bounded(function () { | |
return Data_Ord.ordInt; | |
}, $foreign.bottomInt, $foreign.topInt); | |
var boundedChar = new Bounded(function () { | |
return Data_Ord.ordChar; | |
}, $foreign.bottomChar, $foreign.topChar); | |
var bottom = function (dict) { | |
return dict.bottom; | |
}; | |
exports["Bounded"] = Bounded; | |
exports["bottom"] = bottom; | |
exports["top"] = top; | |
exports["boundedInt"] = boundedInt; | |
exports["boundedChar"] = boundedChar; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.toCharCode = function (c) { | |
return c.charCodeAt(0); | |
}; | |
exports.fromCharCode = function (c) { | |
return String.fromCharCode(c); | |
}; | |
})(PS["Data.Enum"] = PS["Data.Enum"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Enum"] = $PS["Data.Enum"] || {}; | |
var exports = $PS["Data.Enum"]; | |
var $foreign = $PS["Data.Enum"]; | |
var Data_Bounded = $PS["Data.Bounded"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Ord = $PS["Data.Ord"]; | |
var Enum = function (Ord0, pred, succ) { | |
this.Ord0 = Ord0; | |
this.pred = pred; | |
this.succ = succ; | |
}; | |
var BoundedEnum = function (Bounded0, Enum1, cardinality, fromEnum, toEnum) { | |
this.Bounded0 = Bounded0; | |
this.Enum1 = Enum1; | |
this.cardinality = cardinality; | |
this.fromEnum = fromEnum; | |
this.toEnum = toEnum; | |
}; | |
var toEnum = function (dict) { | |
return dict.toEnum; | |
}; | |
var succ = function (dict) { | |
return dict.succ; | |
}; | |
var pred = function (dict) { | |
return dict.pred; | |
}; | |
var fromEnum = function (dict) { | |
return dict.fromEnum; | |
}; | |
var defaultSucc = function (toEnum$prime) { | |
return function (fromEnum$prime) { | |
return function (a) { | |
return toEnum$prime(fromEnum$prime(a) + 1 | 0); | |
}; | |
}; | |
}; | |
var defaultPred = function (toEnum$prime) { | |
return function (fromEnum$prime) { | |
return function (a) { | |
return toEnum$prime(fromEnum$prime(a) - 1 | 0); | |
}; | |
}; | |
}; | |
var charToEnum = function (v) { | |
if (v >= Data_Bounded.bottom(Data_Bounded.boundedInt) && v <= Data_Bounded.top(Data_Bounded.boundedInt)) { | |
return new Data_Maybe.Just($foreign.fromCharCode(v)); | |
}; | |
return Data_Maybe.Nothing.value; | |
}; | |
var enumChar = new Enum(function () { | |
return Data_Ord.ordChar; | |
}, defaultPred(charToEnum)($foreign.toCharCode), defaultSucc(charToEnum)($foreign.toCharCode)); | |
var cardinality = function (dict) { | |
return dict.cardinality; | |
}; | |
var boundedEnumChar = new BoundedEnum(function () { | |
return Data_Bounded.boundedChar; | |
}, function () { | |
return enumChar; | |
}, $foreign.toCharCode(Data_Bounded.top(Data_Bounded.boundedChar)) - $foreign.toCharCode(Data_Bounded.bottom(Data_Bounded.boundedChar)) | 0, $foreign.toCharCode, charToEnum); | |
exports["Enum"] = Enum; | |
exports["succ"] = succ; | |
exports["pred"] = pred; | |
exports["BoundedEnum"] = BoundedEnum; | |
exports["cardinality"] = cardinality; | |
exports["toEnum"] = toEnum; | |
exports["fromEnum"] = fromEnum; | |
exports["defaultSucc"] = defaultSucc; | |
exports["defaultPred"] = defaultPred; | |
exports["enumChar"] = enumChar; | |
exports["boundedEnumChar"] = boundedEnumChar; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Char"] = $PS["Data.Char"] || {}; | |
var exports = $PS["Data.Char"]; | |
var Data_Enum = $PS["Data.Enum"]; | |
var toCharCode = Data_Enum.fromEnum(Data_Enum.boundedEnumChar); | |
exports["toCharCode"] = toCharCode; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.intSub = function (x) { | |
return function (y) { | |
/* jshint bitwise: false */ | |
return x - y | 0; | |
}; | |
}; | |
})(PS["Data.Ring"] = PS["Data.Ring"] || {}); | |
(function(exports) { | |
"use strict"; | |
exports.intAdd = function (x) { | |
return function (y) { | |
/* jshint bitwise: false */ | |
return x + y | 0; | |
}; | |
}; | |
exports.intMul = function (x) { | |
return function (y) { | |
/* jshint bitwise: false */ | |
return x * y | 0; | |
}; | |
}; | |
})(PS["Data.Semiring"] = PS["Data.Semiring"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Semiring"] = $PS["Data.Semiring"] || {}; | |
var exports = $PS["Data.Semiring"]; | |
var $foreign = $PS["Data.Semiring"]; | |
var Semiring = function (add, mul, one, zero) { | |
this.add = add; | |
this.mul = mul; | |
this.one = one; | |
this.zero = zero; | |
}; | |
var zero = function (dict) { | |
return dict.zero; | |
}; | |
var semiringInt = new Semiring($foreign.intAdd, $foreign.intMul, 1, 0); | |
var one = function (dict) { | |
return dict.one; | |
}; | |
var mul = function (dict) { | |
return dict.mul; | |
}; | |
var add = function (dict) { | |
return dict.add; | |
}; | |
exports["Semiring"] = Semiring; | |
exports["add"] = add; | |
exports["zero"] = zero; | |
exports["mul"] = mul; | |
exports["one"] = one; | |
exports["semiringInt"] = semiringInt; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Ring"] = $PS["Data.Ring"] || {}; | |
var exports = $PS["Data.Ring"]; | |
var $foreign = $PS["Data.Ring"]; | |
var Data_Semiring = $PS["Data.Semiring"]; | |
var Ring = function (Semiring0, sub) { | |
this.Semiring0 = Semiring0; | |
this.sub = sub; | |
}; | |
var sub = function (dict) { | |
return dict.sub; | |
}; | |
var ringInt = new Ring(function () { | |
return Data_Semiring.semiringInt; | |
}, $foreign.intSub); | |
exports["Ring"] = Ring; | |
exports["sub"] = sub; | |
exports["ringInt"] = ringInt; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.CommutativeRing"] = $PS["Data.CommutativeRing"] || {}; | |
var exports = $PS["Data.CommutativeRing"]; | |
var Data_Ring = $PS["Data.Ring"]; | |
var CommutativeRing = function (Ring0) { | |
this.Ring0 = Ring0; | |
}; | |
var commutativeRingInt = new CommutativeRing(function () { | |
return Data_Ring.ringInt; | |
}); | |
exports["CommutativeRing"] = CommutativeRing; | |
exports["commutativeRingInt"] = commutativeRingInt; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.intDegree = function (x) { | |
return Math.min(Math.abs(x), 2147483647); | |
}; | |
// See the Euclidean definition in | |
// https://en.m.wikipedia.org/wiki/Modulo_operation. | |
exports.intDiv = function (x) { | |
return function (y) { | |
if (y === 0) return 0; | |
return y > 0 ? Math.floor(x / y) : -Math.floor(x / -y); | |
}; | |
}; | |
exports.intMod = function (x) { | |
return function (y) { | |
if (y === 0) return 0; | |
var yy = Math.abs(y); | |
return ((x % yy) + yy) % yy; | |
}; | |
}; | |
})(PS["Data.EuclideanRing"] = PS["Data.EuclideanRing"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.EuclideanRing"] = $PS["Data.EuclideanRing"] || {}; | |
var exports = $PS["Data.EuclideanRing"]; | |
var $foreign = $PS["Data.EuclideanRing"]; | |
var Data_CommutativeRing = $PS["Data.CommutativeRing"]; | |
var EuclideanRing = function (CommutativeRing0, degree, div, mod) { | |
this.CommutativeRing0 = CommutativeRing0; | |
this.degree = degree; | |
this.div = div; | |
this.mod = mod; | |
}; | |
var mod = function (dict) { | |
return dict.mod; | |
}; | |
var euclideanRingInt = new EuclideanRing(function () { | |
return Data_CommutativeRing.commutativeRingInt; | |
}, $foreign.intDegree, $foreign.intDiv, $foreign.intMod); | |
var div = function (dict) { | |
return dict.div; | |
}; | |
var degree = function (dict) { | |
return dict.degree; | |
}; | |
exports["EuclideanRing"] = EuclideanRing; | |
exports["degree"] = degree; | |
exports["div"] = div; | |
exports["mod"] = mod; | |
exports["euclideanRingInt"] = euclideanRingInt; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
// module Unsafe.Coerce | |
exports.unsafeCoerce = function (x) { | |
return x; | |
}; | |
})(PS["Unsafe.Coerce"] = PS["Unsafe.Coerce"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Unsafe.Coerce"] = $PS["Unsafe.Coerce"] || {}; | |
var exports = $PS["Unsafe.Coerce"]; | |
var $foreign = $PS["Unsafe.Coerce"]; | |
exports["unsafeCoerce"] = $foreign.unsafeCoerce; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Exists"] = $PS["Data.Exists"] || {}; | |
var exports = $PS["Data.Exists"]; | |
var Unsafe_Coerce = $PS["Unsafe.Coerce"]; | |
var runExists = Unsafe_Coerce.unsafeCoerce; | |
var mkExists = Unsafe_Coerce.unsafeCoerce; | |
exports["mkExists"] = mkExists; | |
exports["runExists"] = runExists; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.foldrArray = function (f) { | |
return function (init) { | |
return function (xs) { | |
var acc = init; | |
var len = xs.length; | |
for (var i = len - 1; i >= 0; i--) { | |
acc = f(xs[i])(acc); | |
} | |
return acc; | |
}; | |
}; | |
}; | |
exports.foldlArray = function (f) { | |
return function (init) { | |
return function (xs) { | |
var acc = init; | |
var len = xs.length; | |
for (var i = 0; i < len; i++) { | |
acc = f(acc)(xs[i]); | |
} | |
return acc; | |
}; | |
}; | |
}; | |
})(PS["Data.Foldable"] = PS["Data.Foldable"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Foldable"] = $PS["Data.Foldable"] || {}; | |
var exports = $PS["Data.Foldable"]; | |
var $foreign = $PS["Data.Foldable"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_HeytingAlgebra = $PS["Data.HeytingAlgebra"]; | |
var Data_Monoid = $PS["Data.Monoid"]; | |
var Data_Monoid_Disj = $PS["Data.Monoid.Disj"]; | |
var Data_Newtype = $PS["Data.Newtype"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Data_Semiring = $PS["Data.Semiring"]; | |
var Foldable = function (foldMap, foldl, foldr) { | |
this.foldMap = foldMap; | |
this.foldl = foldl; | |
this.foldr = foldr; | |
}; | |
var foldr = function (dict) { | |
return dict.foldr; | |
}; | |
var foldl = function (dict) { | |
return dict.foldl; | |
}; | |
var intercalate = function (dictFoldable) { | |
return function (dictMonoid) { | |
return function (sep) { | |
return function (xs) { | |
var go = function (v) { | |
return function (x) { | |
if (v.init) { | |
return { | |
init: false, | |
acc: x | |
}; | |
}; | |
return { | |
init: false, | |
acc: Data_Semigroup.append(dictMonoid.Semigroup0())(v.acc)(Data_Semigroup.append(dictMonoid.Semigroup0())(sep)(x)) | |
}; | |
}; | |
}; | |
return (foldl(dictFoldable)(go)({ | |
init: true, | |
acc: Data_Monoid.mempty(dictMonoid) | |
})(xs)).acc; | |
}; | |
}; | |
}; | |
}; | |
var length = function (dictFoldable) { | |
return function (dictSemiring) { | |
return foldl(dictFoldable)(function (c) { | |
return function (v) { | |
return Data_Semiring.add(dictSemiring)(Data_Semiring.one(dictSemiring))(c); | |
}; | |
})(Data_Semiring.zero(dictSemiring)); | |
}; | |
}; | |
var foldMapDefaultR = function (dictFoldable) { | |
return function (dictMonoid) { | |
return function (f) { | |
return foldr(dictFoldable)(function (x) { | |
return function (acc) { | |
return Data_Semigroup.append(dictMonoid.Semigroup0())(f(x))(acc); | |
}; | |
})(Data_Monoid.mempty(dictMonoid)); | |
}; | |
}; | |
}; | |
var foldableArray = new Foldable(function (dictMonoid) { | |
return foldMapDefaultR(foldableArray)(dictMonoid); | |
}, $foreign.foldlArray, $foreign.foldrArray); | |
var foldMap = function (dict) { | |
return dict.foldMap; | |
}; | |
var any = function (dictFoldable) { | |
return function (dictHeytingAlgebra) { | |
return Data_Newtype.alaF(Data_Functor.functorFn)(Data_Functor.functorFn)(Data_Newtype.newtypeDisj)(Data_Newtype.newtypeDisj)(Data_Monoid_Disj.Disj)(foldMap(dictFoldable)(Data_Monoid_Disj.monoidDisj(dictHeytingAlgebra))); | |
}; | |
}; | |
var elem = function (dictFoldable) { | |
return function (dictEq) { | |
var $204 = any(dictFoldable)(Data_HeytingAlgebra.heytingAlgebraBoolean); | |
var $205 = Data_Eq.eq(dictEq); | |
return function ($206) { | |
return $204($205($206)); | |
}; | |
}; | |
}; | |
exports["Foldable"] = Foldable; | |
exports["foldr"] = foldr; | |
exports["foldl"] = foldl; | |
exports["foldMap"] = foldMap; | |
exports["foldMapDefaultR"] = foldMapDefaultR; | |
exports["intercalate"] = intercalate; | |
exports["any"] = any; | |
exports["elem"] = elem; | |
exports["length"] = length; | |
exports["foldableArray"] = foldableArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Generic.Rep"] = $PS["Data.Generic.Rep"] || {}; | |
var exports = $PS["Data.Generic.Rep"]; | |
var Constructor = function (x) { | |
return x; | |
}; | |
var Generic = function (from, to) { | |
this.from = from; | |
this.to = to; | |
}; | |
var to = function (dict) { | |
return dict.to; | |
}; | |
var from = function (dict) { | |
return dict.from; | |
}; | |
exports["Generic"] = Generic; | |
exports["to"] = to; | |
exports["from"] = from; | |
exports["Constructor"] = Constructor; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Generic.Rep.Eq"] = $PS["Data.Generic.Rep.Eq"] || {}; | |
var exports = $PS["Data.Generic.Rep.Eq"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Generic_Rep = $PS["Data.Generic.Rep"]; | |
var GenericEq = function (genericEq$prime) { | |
this["genericEq'"] = genericEq$prime; | |
}; | |
var genericEqArgument = function (dictEq) { | |
return new GenericEq(function (v) { | |
return function (v1) { | |
return Data_Eq.eq(dictEq)(v)(v1); | |
}; | |
}); | |
}; | |
var genericEq$prime = function (dict) { | |
return dict["genericEq'"]; | |
}; | |
var genericEqConstructor = function (dictGenericEq) { | |
return new GenericEq(function (v) { | |
return function (v1) { | |
return genericEq$prime(dictGenericEq)(v)(v1); | |
}; | |
}); | |
}; | |
var genericEq = function (dictGeneric) { | |
return function (dictGenericEq) { | |
return function (x) { | |
return function (y) { | |
return genericEq$prime(dictGenericEq)(Data_Generic_Rep.from(dictGeneric)(x))(Data_Generic_Rep.from(dictGeneric)(y)); | |
}; | |
}; | |
}; | |
}; | |
exports["GenericEq"] = GenericEq; | |
exports["genericEq"] = genericEq; | |
exports["genericEqConstructor"] = genericEqConstructor; | |
exports["genericEqArgument"] = genericEqArgument; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.defer = function (thunk) { | |
var v = null; | |
return function() { | |
if (thunk === undefined) return v; | |
v = thunk(); | |
thunk = undefined; // eslint-disable-line no-param-reassign | |
return v; | |
}; | |
}; | |
exports.force = function (l) { | |
return l(); | |
}; | |
})(PS["Data.Lazy"] = PS["Data.Lazy"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Lazy"] = $PS["Data.Lazy"] || {}; | |
var exports = $PS["Data.Lazy"]; | |
var $foreign = $PS["Data.Lazy"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var functorLazy = new Data_Functor.Functor(function (f) { | |
return function (l) { | |
return $foreign.defer(function (v) { | |
return f($foreign.force(l)); | |
}); | |
}; | |
}); | |
exports["functorLazy"] = functorLazy; | |
exports["defer"] = $foreign.defer; | |
exports["force"] = $foreign.force; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
// jshint maxparams: 3 | |
exports.traverseArrayImpl = function () { | |
function array1(a) { | |
return [a]; | |
} | |
function array2(a) { | |
return function (b) { | |
return [a, b]; | |
}; | |
} | |
function array3(a) { | |
return function (b) { | |
return function (c) { | |
return [a, b, c]; | |
}; | |
}; | |
} | |
function concat2(xs) { | |
return function (ys) { | |
return xs.concat(ys); | |
}; | |
} | |
return function (apply) { | |
return function (map) { | |
return function (pure) { | |
return function (f) { | |
return function (array) { | |
function go(bot, top) { | |
switch (top - bot) { | |
case 0: return pure([]); | |
case 1: return map(array1)(f(array[bot])); | |
case 2: return apply(map(array2)(f(array[bot])))(f(array[bot + 1])); | |
case 3: return apply(apply(map(array3)(f(array[bot])))(f(array[bot + 1])))(f(array[bot + 2])); | |
default: | |
// This slightly tricky pivot selection aims to produce two | |
// even-length partitions where possible. | |
var pivot = bot + Math.floor((top - bot) / 4) * 2; | |
return apply(map(concat2)(go(bot, pivot)))(go(pivot, top)); | |
} | |
} | |
return go(0, array.length); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}(); | |
})(PS["Data.Traversable"] = PS["Data.Traversable"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Traversable"] = $PS["Data.Traversable"] || {}; | |
var exports = $PS["Data.Traversable"]; | |
var $foreign = $PS["Data.Traversable"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Category = $PS["Control.Category"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Traversable = function (Foldable1, Functor0, sequence, traverse) { | |
this.Foldable1 = Foldable1; | |
this.Functor0 = Functor0; | |
this.sequence = sequence; | |
this.traverse = traverse; | |
}; | |
var traverse = function (dict) { | |
return dict.traverse; | |
}; | |
var sequenceDefault = function (dictTraversable) { | |
return function (dictApplicative) { | |
return traverse(dictTraversable)(dictApplicative)(Control_Category.identity(Control_Category.categoryFn)); | |
}; | |
}; | |
var traversableArray = new Traversable(function () { | |
return Data_Foldable.foldableArray; | |
}, function () { | |
return Data_Functor.functorArray; | |
}, function (dictApplicative) { | |
return sequenceDefault(traversableArray)(dictApplicative); | |
}, function (dictApplicative) { | |
return $foreign.traverseArrayImpl(Control_Apply.apply(dictApplicative.Apply0()))(Data_Functor.map((dictApplicative.Apply0()).Functor0()))(Control_Applicative.pure(dictApplicative)); | |
}); | |
var sequence = function (dict) { | |
return dict.sequence; | |
}; | |
exports["Traversable"] = Traversable; | |
exports["traverse"] = traverse; | |
exports["sequence"] = sequence; | |
exports["sequenceDefault"] = sequenceDefault; | |
exports["traversableArray"] = traversableArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.List.Types"] = $PS["Data.List.Types"] || {}; | |
var exports = $PS["Data.List.Types"]; | |
var Control_Alt = $PS["Control.Alt"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Category = $PS["Control.Category"]; | |
var Control_Plus = $PS["Control.Plus"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Monoid = $PS["Data.Monoid"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Nil = (function () { | |
function Nil() { | |
}; | |
Nil.value = new Nil(); | |
return Nil; | |
})(); | |
var Cons = (function () { | |
function Cons(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
Cons.create = function (value0) { | |
return function (value1) { | |
return new Cons(value0, value1); | |
}; | |
}; | |
return Cons; | |
})(); | |
var NonEmptyList = function (x) { | |
return x; | |
}; | |
var listMap = function (f) { | |
var chunkedRevMap = function ($copy_chunksAcc) { | |
return function ($copy_v) { | |
var $tco_var_chunksAcc = $copy_chunksAcc; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(chunksAcc, v) { | |
if (v instanceof Cons && (v.value1 instanceof Cons && v.value1.value1 instanceof Cons)) { | |
$tco_var_chunksAcc = new Cons(v, chunksAcc); | |
$copy_v = v.value1.value1.value1; | |
return; | |
}; | |
var unrolledMap = function (v1) { | |
if (v1 instanceof Cons && (v1.value1 instanceof Cons && v1.value1.value1 instanceof Nil)) { | |
return new Cons(f(v1.value0), new Cons(f(v1.value1.value0), Nil.value)); | |
}; | |
if (v1 instanceof Cons && v1.value1 instanceof Nil) { | |
return new Cons(f(v1.value0), Nil.value); | |
}; | |
return Nil.value; | |
}; | |
var reverseUnrolledMap = function ($copy_v1) { | |
return function ($copy_acc) { | |
var $tco_var_v1 = $copy_v1; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(v1, acc) { | |
if (v1 instanceof Cons && (v1.value0 instanceof Cons && (v1.value0.value1 instanceof Cons && v1.value0.value1.value1 instanceof Cons))) { | |
$tco_var_v1 = v1.value1; | |
$copy_acc = new Cons(f(v1.value0.value0), new Cons(f(v1.value0.value1.value0), new Cons(f(v1.value0.value1.value1.value0), acc))); | |
return; | |
}; | |
$tco_done = true; | |
return acc; | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_v1, $copy_acc); | |
}; | |
return $tco_result; | |
}; | |
}; | |
$tco_done = true; | |
return reverseUnrolledMap(chunksAcc)(unrolledMap(v)); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_chunksAcc, $copy_v); | |
}; | |
return $tco_result; | |
}; | |
}; | |
return chunkedRevMap(Nil.value); | |
}; | |
var functorList = new Data_Functor.Functor(listMap); | |
var foldableList = new Data_Foldable.Foldable(function (dictMonoid) { | |
return function (f) { | |
return Data_Foldable.foldl(foldableList)(function (acc) { | |
var $202 = Data_Semigroup.append(dictMonoid.Semigroup0())(acc); | |
return function ($203) { | |
return $202(f($203)); | |
}; | |
})(Data_Monoid.mempty(dictMonoid)); | |
}; | |
}, function (f) { | |
var go = function ($copy_b) { | |
return function ($copy_v) { | |
var $tco_var_b = $copy_b; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(b, v) { | |
if (v instanceof Nil) { | |
$tco_done = true; | |
return b; | |
}; | |
if (v instanceof Cons) { | |
$tco_var_b = f(b)(v.value0); | |
$copy_v = v.value1; | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.List.Types (line 109, column 12 - line 111, column 30): " + [ v.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_b, $copy_v); | |
}; | |
return $tco_result; | |
}; | |
}; | |
return go; | |
}, function (f) { | |
return function (b) { | |
var rev = Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value); | |
var $204 = Data_Foldable.foldl(foldableList)(Data_Function.flip(f))(b); | |
return function ($205) { | |
return $204(rev($205)); | |
}; | |
}; | |
}); | |
var semigroupList = new Data_Semigroup.Semigroup(function (xs) { | |
return function (ys) { | |
return Data_Foldable.foldr(foldableList)(Cons.create)(ys)(xs); | |
}; | |
}); | |
var showList = function (dictShow) { | |
return new Data_Show.Show(function (v) { | |
if (v instanceof Nil) { | |
return "Nil"; | |
}; | |
return "(" + (Data_Foldable.intercalate(foldableList)(Data_Monoid.monoidString)(" : ")(Data_Functor.map(functorList)(Data_Show.show(dictShow))(v)) + " : Nil)"); | |
}); | |
}; | |
var traversableList = new Data_Traversable.Traversable(function () { | |
return foldableList; | |
}, function () { | |
return functorList; | |
}, function (dictApplicative) { | |
return Data_Traversable.traverse(traversableList)(dictApplicative)(Control_Category.identity(Control_Category.categoryFn)); | |
}, function (dictApplicative) { | |
return function (f) { | |
var $219 = Data_Functor.map((dictApplicative.Apply0()).Functor0())(Data_Foldable.foldl(foldableList)(Data_Function.flip(Cons.create))(Nil.value)); | |
var $220 = Data_Foldable.foldl(foldableList)(function (acc) { | |
var $222 = Control_Apply.lift2(dictApplicative.Apply0())(Data_Function.flip(Cons.create))(acc); | |
return function ($223) { | |
return $222(f($223)); | |
}; | |
})(Control_Applicative.pure(dictApplicative)(Nil.value)); | |
return function ($221) { | |
return $219($220($221)); | |
}; | |
}; | |
}); | |
var applyList = new Control_Apply.Apply(function () { | |
return functorList; | |
}, function (v) { | |
return function (v1) { | |
if (v instanceof Nil) { | |
return Nil.value; | |
}; | |
if (v instanceof Cons) { | |
return Data_Semigroup.append(semigroupList)(Data_Functor.map(functorList)(v.value0)(v1))(Control_Apply.apply(applyList)(v.value1)(v1)); | |
}; | |
throw new Error("Failed pattern match at Data.List.Types (line 155, column 1 - line 157, column 48): " + [ v.constructor.name, v1.constructor.name ]); | |
}; | |
}); | |
var applicativeList = new Control_Applicative.Applicative(function () { | |
return applyList; | |
}, function (a) { | |
return new Cons(a, Nil.value); | |
}); | |
var altList = new Control_Alt.Alt(function () { | |
return functorList; | |
}, Data_Semigroup.append(semigroupList)); | |
var plusList = new Control_Plus.Plus(function () { | |
return altList; | |
}, Nil.value); | |
exports["Nil"] = Nil; | |
exports["Cons"] = Cons; | |
exports["NonEmptyList"] = NonEmptyList; | |
exports["showList"] = showList; | |
exports["semigroupList"] = semigroupList; | |
exports["functorList"] = functorList; | |
exports["foldableList"] = foldableList; | |
exports["traversableList"] = traversableList; | |
exports["applyList"] = applyList; | |
exports["applicativeList"] = applicativeList; | |
exports["altList"] = altList; | |
exports["plusList"] = plusList; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.List"] = $PS["Data.List"] || {}; | |
var exports = $PS["Data.List"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_List_Types = $PS["Data.List.Types"]; | |
var fromFoldable = function (dictFoldable) { | |
return Data_Foldable.foldr(dictFoldable)(Data_List_Types.Cons.create)(Data_List_Types.Nil.value); | |
}; | |
exports["fromFoldable"] = fromFoldable; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unfoldrArrayImpl = function (isNothing) { | |
return function (fromJust) { | |
return function (fst) { | |
return function (snd) { | |
return function (f) { | |
return function (b) { | |
var result = []; | |
var value = b; | |
while (true) { // eslint-disable-line no-constant-condition | |
var maybe = f(value); | |
if (isNothing(maybe)) return result; | |
var tuple = fromJust(maybe); | |
result.push(fst(tuple)); | |
value = snd(tuple); | |
} | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
})(PS["Data.Unfoldable"] = PS["Data.Unfoldable"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Tuple"] = $PS["Data.Tuple"] || {}; | |
var exports = $PS["Data.Tuple"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Tuple = (function () { | |
function Tuple(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
Tuple.create = function (value0) { | |
return function (value1) { | |
return new Tuple(value0, value1); | |
}; | |
}; | |
return Tuple; | |
})(); | |
var uncurry = function (f) { | |
return function (v) { | |
return f(v.value0)(v.value1); | |
}; | |
}; | |
var snd = function (v) { | |
return v.value1; | |
}; | |
var showTuple = function (dictShow) { | |
return function (dictShow1) { | |
return new Data_Show.Show(function (v) { | |
return "(Tuple " + (Data_Show.show(dictShow)(v.value0) + (" " + (Data_Show.show(dictShow1)(v.value1) + ")"))); | |
}); | |
}; | |
}; | |
var functorTuple = new Data_Functor.Functor(function (f) { | |
return function (m) { | |
return new Tuple(m.value0, f(m.value1)); | |
}; | |
}); | |
var fst = function (v) { | |
return v.value0; | |
}; | |
var foldableTuple = new Data_Foldable.Foldable(function (dictMonoid) { | |
return function (f) { | |
return function (v) { | |
return f(v.value1); | |
}; | |
}; | |
}, function (f) { | |
return function (z) { | |
return function (v) { | |
return f(z)(v.value1); | |
}; | |
}; | |
}, function (f) { | |
return function (z) { | |
return function (v) { | |
return f(v.value1)(z); | |
}; | |
}; | |
}); | |
var traversableTuple = new Data_Traversable.Traversable(function () { | |
return foldableTuple; | |
}, function () { | |
return functorTuple; | |
}, function (dictApplicative) { | |
return function (v) { | |
return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(v.value1); | |
}; | |
}, function (dictApplicative) { | |
return function (f) { | |
return function (v) { | |
return Data_Functor.map((dictApplicative.Apply0()).Functor0())(Tuple.create(v.value0))(f(v.value1)); | |
}; | |
}; | |
}); | |
exports["Tuple"] = Tuple; | |
exports["fst"] = fst; | |
exports["snd"] = snd; | |
exports["uncurry"] = uncurry; | |
exports["showTuple"] = showTuple; | |
exports["functorTuple"] = functorTuple; | |
exports["foldableTuple"] = foldableTuple; | |
exports["traversableTuple"] = traversableTuple; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unfoldr1ArrayImpl = function (isNothing) { | |
return function (fromJust) { | |
return function (fst) { | |
return function (snd) { | |
return function (f) { | |
return function (b) { | |
var result = []; | |
var value = b; | |
while (true) { // eslint-disable-line no-constant-condition | |
var tuple = f(value); | |
result.push(fst(tuple)); | |
var maybe = snd(tuple); | |
if (isNothing(maybe)) return result; | |
value = fromJust(maybe); | |
} | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
})(PS["Data.Unfoldable1"] = PS["Data.Unfoldable1"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Unfoldable1"] = $PS["Data.Unfoldable1"] || {}; | |
var exports = $PS["Data.Unfoldable1"]; | |
var $foreign = $PS["Data.Unfoldable1"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Unfoldable1 = function (unfoldr1) { | |
this.unfoldr1 = unfoldr1; | |
}; | |
var unfoldr1 = function (dict) { | |
return dict.unfoldr1; | |
}; | |
var unfoldable1Array = new Unfoldable1($foreign.unfoldr1ArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd)); | |
exports["Unfoldable1"] = Unfoldable1; | |
exports["unfoldr1"] = unfoldr1; | |
exports["unfoldable1Array"] = unfoldable1Array; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Unfoldable"] = $PS["Data.Unfoldable"] || {}; | |
var exports = $PS["Data.Unfoldable"]; | |
var $foreign = $PS["Data.Unfoldable"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Data_Unfoldable1 = $PS["Data.Unfoldable1"]; | |
var Unfoldable = function (Unfoldable10, unfoldr) { | |
this.Unfoldable10 = Unfoldable10; | |
this.unfoldr = unfoldr; | |
}; | |
var unfoldr = function (dict) { | |
return dict.unfoldr; | |
}; | |
var unfoldableArray = new Unfoldable(function () { | |
return Data_Unfoldable1.unfoldable1Array; | |
}, $foreign.unfoldrArrayImpl(Data_Maybe.isNothing)(Data_Maybe.fromJust())(Data_Tuple.fst)(Data_Tuple.snd)); | |
exports["Unfoldable"] = Unfoldable; | |
exports["unfoldr"] = unfoldr; | |
exports["unfoldableArray"] = unfoldableArray; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.List.Lazy.Types"] = $PS["Data.List.Lazy.Types"] || {}; | |
var exports = $PS["Data.List.Lazy.Types"]; | |
var Control_Lazy = $PS["Control.Lazy"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Lazy = $PS["Data.Lazy"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Monoid = $PS["Data.Monoid"]; | |
var Data_Newtype = $PS["Data.Newtype"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Data_Unfoldable = $PS["Data.Unfoldable"]; | |
var Data_Unfoldable1 = $PS["Data.Unfoldable1"]; | |
var List = function (x) { | |
return x; | |
}; | |
var Nil = (function () { | |
function Nil() { | |
}; | |
Nil.value = new Nil(); | |
return Nil; | |
})(); | |
var Cons = (function () { | |
function Cons(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
Cons.create = function (value0) { | |
return function (value1) { | |
return new Cons(value0, value1); | |
}; | |
}; | |
return Cons; | |
})(); | |
var nil = List(Data_Lazy.defer(function (v) { | |
return Nil.value; | |
})); | |
var newtypeList = new Data_Newtype.Newtype(function (n) { | |
return n; | |
}, List); | |
var step = (function () { | |
var $215 = Data_Newtype.unwrap(newtypeList); | |
return function ($216) { | |
return Data_Lazy.force($215($216)); | |
}; | |
})(); | |
var lazyList = new Control_Lazy.Lazy(function (f) { | |
return List(Data_Lazy.defer(function ($217) { | |
return step(f($217)); | |
})); | |
}); | |
var cons = function (x) { | |
return function (xs) { | |
return List(Data_Lazy.defer(function (v) { | |
return new Cons(x, xs); | |
})); | |
}; | |
}; | |
var foldableList = new Data_Foldable.Foldable(function (dictMonoid) { | |
return function (f) { | |
return Data_Foldable.foldl(foldableList)(function (b) { | |
return function (a) { | |
return Data_Semigroup.append(dictMonoid.Semigroup0())(b)(f(a)); | |
}; | |
})(Data_Monoid.mempty(dictMonoid)); | |
}; | |
}, function (op) { | |
var go = function ($copy_b) { | |
return function ($copy_xs) { | |
var $tco_var_b = $copy_b; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(b, xs) { | |
var v = step(xs); | |
if (v instanceof Nil) { | |
$tco_done = true; | |
return b; | |
}; | |
if (v instanceof Cons) { | |
$tco_var_b = op(b)(v.value0); | |
$copy_xs = v.value1; | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.List.Lazy.Types (line 122, column 7 - line 124, column 40): " + [ v.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_b, $copy_xs); | |
}; | |
return $tco_result; | |
}; | |
}; | |
return go; | |
}, function (op) { | |
return function (z) { | |
return function (xs) { | |
var rev = Data_Foldable.foldl(foldableList)(Data_Function.flip(cons))(nil); | |
return Data_Foldable.foldl(foldableList)(Data_Function.flip(op))(z)(rev(xs)); | |
}; | |
}; | |
}); | |
var unfoldable1List = new Data_Unfoldable1.Unfoldable1((function () { | |
var go = function (f) { | |
return function (b) { | |
return Control_Lazy.defer(lazyList)(function (v) { | |
var v1 = f(b); | |
if (v1.value1 instanceof Data_Maybe.Just) { | |
return cons(v1.value0)(go(f)(v1.value1.value0)); | |
}; | |
if (v1.value1 instanceof Data_Maybe.Nothing) { | |
return cons(v1.value0)(nil); | |
}; | |
throw new Error("Failed pattern match at Data.List.Lazy.Types (line 146, column 28 - line 148, column 33): " + [ v1.constructor.name ]); | |
}); | |
}; | |
}; | |
return go; | |
})()); | |
var unfoldableList = new Data_Unfoldable.Unfoldable(function () { | |
return unfoldable1List; | |
}, (function () { | |
var go = function (f) { | |
return function (b) { | |
return Control_Lazy.defer(lazyList)(function (v) { | |
var v1 = f(b); | |
if (v1 instanceof Data_Maybe.Nothing) { | |
return nil; | |
}; | |
if (v1 instanceof Data_Maybe.Just) { | |
return cons(v1.value0.value0)(go(f)(v1.value0.value1)); | |
}; | |
throw new Error("Failed pattern match at Data.List.Lazy.Types (line 152, column 28 - line 154, column 39): " + [ v1.constructor.name ]); | |
}); | |
}; | |
}; | |
return go; | |
})()); | |
exports["List"] = List; | |
exports["Nil"] = Nil; | |
exports["Cons"] = Cons; | |
exports["step"] = step; | |
exports["nil"] = nil; | |
exports["cons"] = cons; | |
exports["newtypeList"] = newtypeList; | |
exports["lazyList"] = lazyList; | |
exports["foldableList"] = foldableList; | |
exports["unfoldable1List"] = unfoldable1List; | |
exports["unfoldableList"] = unfoldableList; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.List.Lazy"] = $PS["Data.List.Lazy"] || {}; | |
var exports = $PS["Data.List.Lazy"]; | |
var Data_Boolean = $PS["Data.Boolean"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Lazy = $PS["Data.Lazy"]; | |
var Data_List_Lazy_Types = $PS["Data.List.Lazy.Types"]; | |
var Data_Newtype = $PS["Data.Newtype"]; | |
var filter = function (p) { | |
var go = function ($copy_v) { | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(v) { | |
if (v instanceof Data_List_Lazy_Types.Nil) { | |
$tco_done = true; | |
return Data_List_Lazy_Types.Nil.value; | |
}; | |
if (v instanceof Data_List_Lazy_Types.Cons) { | |
if (p(v.value0)) { | |
$tco_done = true; | |
return new Data_List_Lazy_Types.Cons(v.value0, filter(p)(v.value1)); | |
}; | |
if (Data_Boolean.otherwise) { | |
$copy_v = Data_List_Lazy_Types.step(v.value1); | |
return; | |
}; | |
}; | |
throw new Error("Failed pattern match at Data.List.Lazy (line 428, column 3 - line 428, column 15): " + [ v.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($copy_v); | |
}; | |
return $tco_result; | |
}; | |
var $266 = Data_Functor.map(Data_Lazy.functorLazy)(go); | |
var $267 = Data_Newtype.unwrap(Data_List_Lazy_Types.newtypeList); | |
return function ($268) { | |
return Data_List_Lazy_Types.List($266($267($268))); | |
}; | |
}; | |
exports["filter"] = filter; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.NonEmpty"] = $PS["Data.NonEmpty"] || {}; | |
var exports = $PS["Data.NonEmpty"]; | |
var Control_Plus = $PS["Control.Plus"]; | |
var NonEmpty = (function () { | |
function NonEmpty(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
NonEmpty.create = function (value0) { | |
return function (value1) { | |
return new NonEmpty(value0, value1); | |
}; | |
}; | |
return NonEmpty; | |
})(); | |
var singleton = function (dictPlus) { | |
return function (a) { | |
return new NonEmpty(a, Control_Plus.empty(dictPlus)); | |
}; | |
}; | |
exports["NonEmpty"] = NonEmpty; | |
exports["singleton"] = singleton; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.List.NonEmpty"] = $PS["Data.List.NonEmpty"] || {}; | |
var exports = $PS["Data.List.NonEmpty"]; | |
var Data_List_Types = $PS["Data.List.Types"]; | |
var Data_NonEmpty = $PS["Data.NonEmpty"]; | |
var singleton = (function () { | |
var $168 = Data_NonEmpty.singleton(Data_List_Types.plusList); | |
return function ($169) { | |
return Data_List_Types.NonEmptyList($168($169)); | |
}; | |
})(); | |
exports["singleton"] = singleton; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Map.Internal"] = $PS["Data.Map.Internal"] || {}; | |
var exports = $PS["Data.Map.Internal"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_List_Lazy = $PS["Data.List.Lazy"]; | |
var Data_List_Lazy_Types = $PS["Data.List.Lazy.Types"]; | |
var Data_List_Types = $PS["Data.List.Types"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Ord = $PS["Data.Ord"]; | |
var Data_Ordering = $PS["Data.Ordering"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Data_Unfoldable = $PS["Data.Unfoldable"]; | |
var Leaf = (function () { | |
function Leaf() { | |
}; | |
Leaf.value = new Leaf(); | |
return Leaf; | |
})(); | |
var Two = (function () { | |
function Two(value0, value1, value2, value3) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
}; | |
Two.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return new Two(value0, value1, value2, value3); | |
}; | |
}; | |
}; | |
}; | |
return Two; | |
})(); | |
var Three = (function () { | |
function Three(value0, value1, value2, value3, value4, value5, value6) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
this.value4 = value4; | |
this.value5 = value5; | |
this.value6 = value6; | |
}; | |
Three.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return function (value4) { | |
return function (value5) { | |
return function (value6) { | |
return new Three(value0, value1, value2, value3, value4, value5, value6); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
return Three; | |
})(); | |
var TwoLeft = (function () { | |
function TwoLeft(value0, value1, value2) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
}; | |
TwoLeft.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return new TwoLeft(value0, value1, value2); | |
}; | |
}; | |
}; | |
return TwoLeft; | |
})(); | |
var TwoRight = (function () { | |
function TwoRight(value0, value1, value2) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
}; | |
TwoRight.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return new TwoRight(value0, value1, value2); | |
}; | |
}; | |
}; | |
return TwoRight; | |
})(); | |
var ThreeLeft = (function () { | |
function ThreeLeft(value0, value1, value2, value3, value4, value5) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
this.value4 = value4; | |
this.value5 = value5; | |
}; | |
ThreeLeft.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return function (value4) { | |
return function (value5) { | |
return new ThreeLeft(value0, value1, value2, value3, value4, value5); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
return ThreeLeft; | |
})(); | |
var ThreeMiddle = (function () { | |
function ThreeMiddle(value0, value1, value2, value3, value4, value5) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
this.value4 = value4; | |
this.value5 = value5; | |
}; | |
ThreeMiddle.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return function (value4) { | |
return function (value5) { | |
return new ThreeMiddle(value0, value1, value2, value3, value4, value5); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
return ThreeMiddle; | |
})(); | |
var ThreeRight = (function () { | |
function ThreeRight(value0, value1, value2, value3, value4, value5) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
this.value4 = value4; | |
this.value5 = value5; | |
}; | |
ThreeRight.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return function (value4) { | |
return function (value5) { | |
return new ThreeRight(value0, value1, value2, value3, value4, value5); | |
}; | |
}; | |
}; | |
}; | |
}; | |
}; | |
return ThreeRight; | |
})(); | |
var KickUp = (function () { | |
function KickUp(value0, value1, value2, value3) { | |
this.value0 = value0; | |
this.value1 = value1; | |
this.value2 = value2; | |
this.value3 = value3; | |
}; | |
KickUp.create = function (value0) { | |
return function (value1) { | |
return function (value2) { | |
return function (value3) { | |
return new KickUp(value0, value1, value2, value3); | |
}; | |
}; | |
}; | |
}; | |
return KickUp; | |
})(); | |
var values = function (v) { | |
if (v instanceof Leaf) { | |
return Data_List_Types.Nil.value; | |
}; | |
if (v instanceof Two) { | |
return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(values(v.value3))); | |
}; | |
if (v instanceof Three) { | |
return Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value0))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value2))(Data_Semigroup.append(Data_List_Types.semigroupList)(values(v.value3))(Data_Semigroup.append(Data_List_Types.semigroupList)(Control_Applicative.pure(Data_List_Types.applicativeList)(v.value5))(values(v.value6))))); | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 612, column 1 - line 612, column 40): " + [ v.constructor.name ]); | |
}; | |
var singleton = function (k) { | |
return function (v) { | |
return new Two(Leaf.value, k, v, Leaf.value); | |
}; | |
}; | |
var toUnfoldable = function (dictUnfoldable) { | |
return function (m) { | |
var go = function ($copy_v) { | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(v) { | |
if (v instanceof Data_List_Types.Nil) { | |
$tco_done = true; | |
return Data_Maybe.Nothing.value; | |
}; | |
if (v instanceof Data_List_Types.Cons) { | |
if (v.value0 instanceof Leaf) { | |
$copy_v = v.value1; | |
return; | |
}; | |
if (v.value0 instanceof Two && (v.value0.value0 instanceof Leaf && v.value0.value3 instanceof Leaf)) { | |
$tco_done = true; | |
return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), v.value1)); | |
}; | |
if (v.value0 instanceof Two && v.value0.value0 instanceof Leaf) { | |
$tco_done = true; | |
return Data_Maybe.Just.create(new Data_Tuple.Tuple(new Data_Tuple.Tuple(v.value0.value1, v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1))); | |
}; | |
if (v.value0 instanceof Two) { | |
$copy_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, v.value1))); | |
return; | |
}; | |
if (v.value0 instanceof Three) { | |
$copy_v = new Data_List_Types.Cons(v.value0.value0, new Data_List_Types.Cons(singleton(v.value0.value1)(v.value0.value2), new Data_List_Types.Cons(v.value0.value3, new Data_List_Types.Cons(singleton(v.value0.value4)(v.value0.value5), new Data_List_Types.Cons(v.value0.value6, v.value1))))); | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 577, column 18 - line 586, column 71): " + [ v.value0.constructor.name ]); | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 576, column 3 - line 576, column 19): " + [ v.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($copy_v); | |
}; | |
return $tco_result; | |
}; | |
return Data_Unfoldable.unfoldr(dictUnfoldable)(go)(new Data_List_Types.Cons(m, Data_List_Types.Nil.value)); | |
}; | |
}; | |
var functorMap = new Data_Functor.Functor(function (v) { | |
return function (v1) { | |
if (v1 instanceof Leaf) { | |
return Leaf.value; | |
}; | |
if (v1 instanceof Two) { | |
return new Two(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3)); | |
}; | |
if (v1 instanceof Three) { | |
return new Three(Data_Functor.map(functorMap)(v)(v1.value0), v1.value1, v(v1.value2), Data_Functor.map(functorMap)(v)(v1.value3), v1.value4, v(v1.value5), Data_Functor.map(functorMap)(v)(v1.value6)); | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 96, column 1 - line 99, column 110): " + [ v.constructor.name, v1.constructor.name ]); | |
}; | |
}); | |
var fromZipper = function ($copy_dictOrd) { | |
return function ($copy_v) { | |
return function ($copy_tree) { | |
var $tco_var_dictOrd = $copy_dictOrd; | |
var $tco_var_v = $copy_v; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(dictOrd, v, tree) { | |
if (v instanceof Data_List_Types.Nil) { | |
$tco_done = true; | |
return tree; | |
}; | |
if (v instanceof Data_List_Types.Cons) { | |
if (v.value0 instanceof TwoLeft) { | |
$tco_var_dictOrd = dictOrd; | |
$tco_var_v = v.value1; | |
$copy_tree = new Two(tree, v.value0.value0, v.value0.value1, v.value0.value2); | |
return; | |
}; | |
if (v.value0 instanceof TwoRight) { | |
$tco_var_dictOrd = dictOrd; | |
$tco_var_v = v.value1; | |
$copy_tree = new Two(v.value0.value0, v.value0.value1, v.value0.value2, tree); | |
return; | |
}; | |
if (v.value0 instanceof ThreeLeft) { | |
$tco_var_dictOrd = dictOrd; | |
$tco_var_v = v.value1; | |
$copy_tree = new Three(tree, v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5); | |
return; | |
}; | |
if (v.value0 instanceof ThreeMiddle) { | |
$tco_var_dictOrd = dictOrd; | |
$tco_var_v = v.value1; | |
$copy_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, tree, v.value0.value3, v.value0.value4, v.value0.value5); | |
return; | |
}; | |
if (v.value0 instanceof ThreeRight) { | |
$tco_var_dictOrd = dictOrd; | |
$tco_var_v = v.value1; | |
$copy_tree = new Three(v.value0.value0, v.value0.value1, v.value0.value2, v.value0.value3, v.value0.value4, v.value0.value5, tree); | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 418, column 3 - line 423, column 88): " + [ v.value0.constructor.name ]); | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 415, column 1 - line 415, column 80): " + [ v.constructor.name, tree.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_dictOrd, $tco_var_v, $copy_tree); | |
}; | |
return $tco_result; | |
}; | |
}; | |
}; | |
var insert = function (dictOrd) { | |
return function (k) { | |
return function (v) { | |
var up = function ($copy_v1) { | |
return function ($copy_v2) { | |
var $tco_var_v1 = $copy_v1; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(v1, v2) { | |
if (v1 instanceof Data_List_Types.Nil) { | |
$tco_done = true; | |
return new Two(v2.value0, v2.value1, v2.value2, v2.value3); | |
}; | |
if (v1 instanceof Data_List_Types.Cons) { | |
if (v1.value0 instanceof TwoLeft) { | |
$tco_done = true; | |
return fromZipper(dictOrd)(v1.value1)(new Three(v2.value0, v2.value1, v2.value2, v2.value3, v1.value0.value0, v1.value0.value1, v1.value0.value2)); | |
}; | |
if (v1.value0 instanceof TwoRight) { | |
$tco_done = true; | |
return fromZipper(dictOrd)(v1.value1)(new Three(v1.value0.value0, v1.value0.value1, v1.value0.value2, v2.value0, v2.value1, v2.value2, v2.value3)); | |
}; | |
if (v1.value0 instanceof ThreeLeft) { | |
$tco_var_v1 = v1.value1; | |
$copy_v2 = new KickUp(new Two(v2.value0, v2.value1, v2.value2, v2.value3), v1.value0.value0, v1.value0.value1, new Two(v1.value0.value2, v1.value0.value3, v1.value0.value4, v1.value0.value5)); | |
return; | |
}; | |
if (v1.value0 instanceof ThreeMiddle) { | |
$tco_var_v1 = v1.value1; | |
$copy_v2 = new KickUp(new Two(v1.value0.value0, v1.value0.value1, v1.value0.value2, v2.value0), v2.value1, v2.value2, new Two(v2.value3, v1.value0.value3, v1.value0.value4, v1.value0.value5)); | |
return; | |
}; | |
if (v1.value0 instanceof ThreeRight) { | |
$tco_var_v1 = v1.value1; | |
$copy_v2 = new KickUp(new Two(v1.value0.value0, v1.value0.value1, v1.value0.value2, v1.value0.value3), v1.value0.value4, v1.value0.value5, new Two(v2.value0, v2.value1, v2.value2, v2.value3)); | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 454, column 5 - line 459, column 108): " + [ v1.value0.constructor.name, v2.constructor.name ]); | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 451, column 3 - line 451, column 56): " + [ v1.constructor.name, v2.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_v1, $copy_v2); | |
}; | |
return $tco_result; | |
}; | |
}; | |
var comp = Data_Ord.compare(dictOrd); | |
var down = function ($copy_ctx) { | |
return function ($copy_v1) { | |
var $tco_var_ctx = $copy_ctx; | |
var $tco_done = false; | |
var $tco_result; | |
function $tco_loop(ctx, v1) { | |
if (v1 instanceof Leaf) { | |
$tco_done = true; | |
return up(ctx)(new KickUp(Leaf.value, k, v, Leaf.value)); | |
}; | |
if (v1 instanceof Two) { | |
var v2 = comp(k)(v1.value1); | |
if (v2 instanceof Data_Ordering.EQ) { | |
$tco_done = true; | |
return fromZipper(dictOrd)(ctx)(new Two(v1.value0, k, v, v1.value3)); | |
}; | |
if (v2 instanceof Data_Ordering.LT) { | |
$tco_var_ctx = new Data_List_Types.Cons(new TwoLeft(v1.value1, v1.value2, v1.value3), ctx); | |
$copy_v1 = v1.value0; | |
return; | |
}; | |
$tco_var_ctx = new Data_List_Types.Cons(new TwoRight(v1.value0, v1.value1, v1.value2), ctx); | |
$copy_v1 = v1.value3; | |
return; | |
}; | |
if (v1 instanceof Three) { | |
var v3 = comp(k)(v1.value1); | |
if (v3 instanceof Data_Ordering.EQ) { | |
$tco_done = true; | |
return fromZipper(dictOrd)(ctx)(new Three(v1.value0, k, v, v1.value3, v1.value4, v1.value5, v1.value6)); | |
}; | |
var v4 = comp(k)(v1.value4); | |
if (v4 instanceof Data_Ordering.EQ) { | |
$tco_done = true; | |
return fromZipper(dictOrd)(ctx)(new Three(v1.value0, v1.value1, v1.value2, v1.value3, k, v, v1.value6)); | |
}; | |
if (v3 instanceof Data_Ordering.LT) { | |
$tco_var_ctx = new Data_List_Types.Cons(new ThreeLeft(v1.value1, v1.value2, v1.value3, v1.value4, v1.value5, v1.value6), ctx); | |
$copy_v1 = v1.value0; | |
return; | |
}; | |
if (v3 instanceof Data_Ordering.GT && v4 instanceof Data_Ordering.LT) { | |
$tco_var_ctx = new Data_List_Types.Cons(new ThreeMiddle(v1.value0, v1.value1, v1.value2, v1.value4, v1.value5, v1.value6), ctx); | |
$copy_v1 = v1.value3; | |
return; | |
}; | |
$tco_var_ctx = new Data_List_Types.Cons(new ThreeRight(v1.value0, v1.value1, v1.value2, v1.value3, v1.value4, v1.value5), ctx); | |
$copy_v1 = v1.value6; | |
return; | |
}; | |
throw new Error("Failed pattern match at Data.Map.Internal (line 434, column 3 - line 434, column 55): " + [ ctx.constructor.name, v1.constructor.name ]); | |
}; | |
while (!$tco_done) { | |
$tco_result = $tco_loop($tco_var_ctx, $copy_v1); | |
}; | |
return $tco_result; | |
}; | |
}; | |
return down(Data_List_Types.Nil.value); | |
}; | |
}; | |
}; | |
var foldableMap = new Data_Foldable.Foldable(function (dictMonoid) { | |
return function (f) { | |
return function (m) { | |
return Data_Foldable.foldMap(Data_List_Types.foldableList)(dictMonoid)(f)(values(m)); | |
}; | |
}; | |
}, function (f) { | |
return function (z) { | |
return function (m) { | |
return Data_Foldable.foldl(Data_List_Types.foldableList)(f)(z)(values(m)); | |
}; | |
}; | |
}, function (f) { | |
return function (z) { | |
return function (m) { | |
return Data_Foldable.foldr(Data_List_Types.foldableList)(f)(z)(values(m)); | |
}; | |
}; | |
}); | |
var empty = Leaf.value; | |
var fromFoldable = function (dictOrd) { | |
return function (dictFoldable) { | |
return Data_Foldable.foldl(dictFoldable)(function (m) { | |
return function (v) { | |
return insert(dictOrd)(v.value0)(v.value1)(m); | |
}; | |
})(empty); | |
}; | |
}; | |
var filterWithKey = function (dictOrd) { | |
return function (predicate) { | |
var $758 = fromFoldable(dictOrd)(Data_List_Lazy_Types.foldableList); | |
var $759 = Data_List_Lazy.filter(Data_Tuple.uncurry(predicate)); | |
var $760 = toUnfoldable(Data_List_Lazy_Types.unfoldableList); | |
return function ($761) { | |
return $758($759($760($761))); | |
}; | |
}; | |
}; | |
var filter = function (dictOrd) { | |
return function (predicate) { | |
return filterWithKey(dictOrd)(Data_Function["const"](predicate)); | |
}; | |
}; | |
exports["empty"] = empty; | |
exports["singleton"] = singleton; | |
exports["insert"] = insert; | |
exports["fromFoldable"] = fromFoldable; | |
exports["toUnfoldable"] = toUnfoldable; | |
exports["values"] = values; | |
exports["filterWithKey"] = filterWithKey; | |
exports["filter"] = filter; | |
exports["functorMap"] = functorMap; | |
exports["foldableMap"] = foldableMap; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.toCharArray = function (s) { | |
return s.split(""); | |
}; | |
})(PS["Data.String.CodeUnits"] = PS["Data.String.CodeUnits"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.String.CodeUnits"] = $PS["Data.String.CodeUnits"] || {}; | |
var exports = $PS["Data.String.CodeUnits"]; | |
var $foreign = $PS["Data.String.CodeUnits"]; | |
exports["toCharArray"] = $foreign.toCharArray; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unit = {}; | |
})(PS["Data.Unit"] = PS["Data.Unit"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Data.Unit"] = $PS["Data.Unit"] || {}; | |
var exports = $PS["Data.Unit"]; | |
var $foreign = $PS["Data.Unit"]; | |
var Data_Show = $PS["Data.Show"]; | |
var showUnit = new Data_Show.Show(function (v) { | |
return "unit"; | |
}); | |
exports["showUnit"] = showUnit; | |
exports["unit"] = $foreign.unit; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.pureE = function (a) { | |
return function () { | |
return a; | |
}; | |
}; | |
exports.bindE = function (a) { | |
return function (f) { | |
return function () { | |
return f(a())(); | |
}; | |
}; | |
}; | |
})(PS["Effect"] = PS["Effect"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Effect"] = $PS["Effect"] || {}; | |
var exports = $PS["Effect"]; | |
var $foreign = $PS["Effect"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Monad = $PS["Control.Monad"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var monadEffect = new Control_Monad.Monad(function () { | |
return applicativeEffect; | |
}, function () { | |
return bindEffect; | |
}); | |
var bindEffect = new Control_Bind.Bind(function () { | |
return applyEffect; | |
}, $foreign.bindE); | |
var applyEffect = new Control_Apply.Apply(function () { | |
return functorEffect; | |
}, Control_Monad.ap(monadEffect)); | |
var applicativeEffect = new Control_Applicative.Applicative(function () { | |
return applyEffect; | |
}, $foreign.pureE); | |
var functorEffect = new Data_Functor.Functor(Control_Applicative.liftA1(applicativeEffect)); | |
exports["functorEffect"] = functorEffect; | |
exports["applyEffect"] = applyEffect; | |
exports["applicativeEffect"] = applicativeEffect; | |
exports["bindEffect"] = bindEffect; | |
exports["monadEffect"] = monadEffect; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.log = function (s) { | |
return function () { | |
console.log(s); | |
return {}; | |
}; | |
}; | |
})(PS["Effect.Console"] = PS["Effect.Console"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Effect.Console"] = $PS["Effect.Console"] || {}; | |
var exports = $PS["Effect.Console"]; | |
var $foreign = $PS["Effect.Console"]; | |
var Data_Show = $PS["Data.Show"]; | |
var logShow = function (dictShow) { | |
return function (a) { | |
return $foreign.log(Data_Show.show(dictShow)(a)); | |
}; | |
}; | |
exports["logShow"] = logShow; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unsafeFromForeign = function (value) { | |
return value; | |
}; | |
exports.typeOf = function (value) { | |
return typeof value; | |
}; | |
exports.isNull = function (value) { | |
return value === null; | |
}; | |
exports.isUndefined = function (value) { | |
return value === undefined; | |
}; | |
})(PS["Foreign"] = PS["Foreign"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Foreign"] = $PS["Foreign"] || {}; | |
var exports = $PS["Foreign"]; | |
var $foreign = $PS["Foreign"]; | |
var Control_Monad_Error_Class = $PS["Control.Monad.Error.Class"]; | |
var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; | |
var Data_Identity = $PS["Data.Identity"]; | |
var Data_List_NonEmpty = $PS["Data.List.NonEmpty"]; | |
var TypeMismatch = (function () { | |
function TypeMismatch(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
TypeMismatch.create = function (value0) { | |
return function (value1) { | |
return new TypeMismatch(value0, value1); | |
}; | |
}; | |
return TypeMismatch; | |
})(); | |
var ErrorAtProperty = (function () { | |
function ErrorAtProperty(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
ErrorAtProperty.create = function (value0) { | |
return function (value1) { | |
return new ErrorAtProperty(value0, value1); | |
}; | |
}; | |
return ErrorAtProperty; | |
})(); | |
var fail = (function () { | |
var $107 = Control_Monad_Error_Class.throwError(Control_Monad_Except_Trans.monadThrowExceptT(Data_Identity.monadIdentity)); | |
return function ($108) { | |
return $107(Data_List_NonEmpty.singleton($108)); | |
}; | |
})(); | |
exports["TypeMismatch"] = TypeMismatch; | |
exports["ErrorAtProperty"] = ErrorAtProperty; | |
exports["fail"] = fail; | |
exports["unsafeFromForeign"] = $foreign.unsafeFromForeign; | |
exports["typeOf"] = $foreign.typeOf; | |
exports["isNull"] = $foreign.isNull; | |
exports["isUndefined"] = $foreign.isUndefined; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unsafeReadPropImpl = function (f, s, key, value) { | |
return value == null ? f : s(value[key]); | |
}; | |
exports.unsafeHasOwnProperty = function (prop, value) { | |
return Object.prototype.hasOwnProperty.call(value, prop); | |
}; | |
exports.unsafeHasProperty = function (prop, value) { | |
return prop in value; | |
}; | |
})(PS["Foreign.Index"] = PS["Foreign.Index"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Foreign.Index"] = $PS["Foreign.Index"] || {}; | |
var exports = $PS["Foreign.Index"]; | |
var $foreign = $PS["Foreign.Index"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Identity = $PS["Data.Identity"]; | |
var Foreign = $PS["Foreign"]; | |
var Indexable = function (ix) { | |
this.ix = ix; | |
}; | |
var Index = function (errorAt, hasOwnProperty, hasProperty, index) { | |
this.errorAt = errorAt; | |
this.hasOwnProperty = hasOwnProperty; | |
this.hasProperty = hasProperty; | |
this.index = index; | |
}; | |
var unsafeReadProp = function (k) { | |
return function (value) { | |
return $foreign.unsafeReadPropImpl(Foreign.fail(new Foreign.TypeMismatch("object", Foreign.typeOf(value))), Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity)), k, value); | |
}; | |
}; | |
var readProp = unsafeReadProp; | |
var ix = function (dict) { | |
return dict.ix; | |
}; | |
var index = function (dict) { | |
return dict.index; | |
}; | |
var indexableForeign = new Indexable(function (dictIndex) { | |
return index(dictIndex); | |
}); | |
var hasPropertyImpl = function (v) { | |
return function (value) { | |
if (Foreign.isNull(value)) { | |
return false; | |
}; | |
if (Foreign.isUndefined(value)) { | |
return false; | |
}; | |
if (Foreign.typeOf(value) === "object" || Foreign.typeOf(value) === "function") { | |
return $foreign.unsafeHasProperty(v, value); | |
}; | |
return false; | |
}; | |
}; | |
var hasProperty = function (dict) { | |
return dict.hasProperty; | |
}; | |
var hasOwnPropertyImpl = function (v) { | |
return function (value) { | |
if (Foreign.isNull(value)) { | |
return false; | |
}; | |
if (Foreign.isUndefined(value)) { | |
return false; | |
}; | |
if (Foreign.typeOf(value) === "object" || Foreign.typeOf(value) === "function") { | |
return $foreign.unsafeHasOwnProperty(v, value); | |
}; | |
return false; | |
}; | |
}; | |
var indexString = new Index(Foreign.ErrorAtProperty.create, hasOwnPropertyImpl, hasPropertyImpl, Data_Function.flip(readProp)); | |
var hasOwnProperty = function (dict) { | |
return dict.hasOwnProperty; | |
}; | |
var errorAt = function (dict) { | |
return dict.errorAt; | |
}; | |
exports["Index"] = Index; | |
exports["Indexable"] = Indexable; | |
exports["readProp"] = readProp; | |
exports["ix"] = ix; | |
exports["index"] = index; | |
exports["hasProperty"] = hasProperty; | |
exports["hasOwnProperty"] = hasOwnProperty; | |
exports["errorAt"] = errorAt; | |
exports["indexString"] = indexString; | |
exports["indexableForeign"] = indexableForeign; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unsafeKeys = Object.keys || function (value) { | |
var keys = []; | |
for (var prop in value) { | |
if (Object.prototype.hasOwnProperty.call(value, prop)) { | |
keys.push(prop); | |
} | |
} | |
return keys; | |
}; | |
})(PS["Foreign.Keys"] = PS["Foreign.Keys"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Foreign.Keys"] = $PS["Foreign.Keys"] || {}; | |
var exports = $PS["Foreign.Keys"]; | |
var $foreign = $PS["Foreign.Keys"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; | |
var Data_Boolean = $PS["Data.Boolean"]; | |
var Data_Identity = $PS["Data.Identity"]; | |
var Foreign = $PS["Foreign"]; | |
var keys = function (value) { | |
if (Foreign.isNull(value)) { | |
return Foreign.fail(new Foreign.TypeMismatch("object", "null")); | |
}; | |
if (Foreign.isUndefined(value)) { | |
return Foreign.fail(new Foreign.TypeMismatch("object", "undefined")); | |
}; | |
if (Foreign.typeOf(value) === "object") { | |
return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))($foreign.unsafeKeys(value)); | |
}; | |
if (Data_Boolean.otherwise) { | |
return Foreign.fail(new Foreign.TypeMismatch("object", Foreign.typeOf(value))); | |
}; | |
throw new Error("Failed pattern match at Foreign.Keys (line 15, column 1 - line 15, column 36): " + [ value.constructor.name ]); | |
}; | |
exports["keys"] = keys; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.find_sources = FIND_SOURCES; | |
exports.find_structures = FIND_STRUCTURES; | |
exports.find_my_spawns = FIND_MY_SPAWNS; | |
})(PS["Screeps.FindType"] = PS["Screeps.FindType"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.FindType"] = $PS["Screeps.FindType"] || {}; | |
var exports = $PS["Screeps.FindType"]; | |
var $foreign = $PS["Screeps.FindType"]; | |
exports["find_sources"] = $foreign.find_sources; | |
exports["find_structures"] = $foreign.find_structures; | |
exports["find_my_spawns"] = $foreign.find_my_spawns; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.unsafeGameField = function (fieldName) { | |
return function () { return Game[fieldName]; } | |
} | |
})(PS["Screeps.Game"] = PS["Screeps.Game"] || {}); | |
(function(exports) { | |
"use strict"; | |
// module Screeps.FFI | |
exports.unsafeField = function (key) { | |
return function (obj) { | |
console.log(obj); | |
console.log(key); | |
return obj[key]; | |
} | |
} | |
exports.unsafeOptField_helper = function (Nothing) { | |
return function (Just) { | |
return function (key) { | |
return function (obj) { | |
var r = obj[key]; | |
if (_.isUndefined(r)) { | |
return Nothing; | |
} else { | |
return Just(r); | |
} | |
} | |
} | |
} | |
} | |
exports.runThisEffectFn1 = function (key) { | |
return function (self) { | |
return function (a) { | |
return function () { | |
return self[key](a); | |
} | |
} | |
} | |
} | |
exports.runThisEffectFn2 = function (key) { | |
return function (self) { | |
return function (a) { | |
return function (b) { | |
return function () { | |
return self[key](a, b); | |
} | |
} | |
} | |
} | |
} | |
exports.runThisEffectFn3 = function (key) { | |
return function (self) { | |
return function (a) { | |
return function (b) { | |
return function (c) { | |
return function () { | |
return self[key](a, b, c); | |
} | |
} | |
} | |
} | |
} | |
} | |
exports.runThisFn0 = function (key) { | |
return function (self) { | |
return self[key](); | |
} | |
} | |
exports.runThisFn1 = function (key) { | |
return function (self) { | |
return function (a) { | |
return self[key](a); | |
} | |
} | |
} | |
exports.runThisFn2 = function (key) { | |
return function (self) { | |
return function (a) { | |
return function (b) { | |
return self[key](a, b); | |
} | |
} | |
} | |
} | |
exports.null = null; | |
exports.undefined = undefined; | |
exports.notNullOrUndefined = function (x) { | |
return x; | |
} | |
exports.isUndefined = function (x) { | |
return x === undefined; | |
} | |
exports.toMaybeImpl = function (val, nothing, just) { | |
if (val === null || val === undefined) { | |
return nothing; | |
} else { | |
return just(val); | |
} | |
} | |
exports.selectMaybesImpl = function (isJust) { | |
return function (fromJust) { | |
return function (obj) { | |
var newObj = {}; | |
for (var key in obj) { | |
if (!obj.hasOwnProperty(key)) { | |
continue; | |
} | |
if (isJust(obj[key])) { | |
newObj[key] = fromJust(obj[key]); | |
} | |
} | |
return newObj; | |
} | |
} | |
} | |
exports.instanceOf = function (className) { | |
return function (object) { | |
var global = (1, eval)('this'); | |
return object instanceof global[className]; | |
} | |
} | |
})(PS["Screeps.FFI"] = PS["Screeps.FFI"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.FFI"] = $PS["Screeps.FFI"] || {}; | |
var exports = $PS["Screeps.FFI"]; | |
var $foreign = $PS["Screeps.FFI"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Apply = $PS["Control.Apply"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Monad_Except = $PS["Control.Monad.Except"]; | |
var Control_Monad_Except_Trans = $PS["Control.Monad.Except.Trans"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Function = $PS["Data.Function"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Identity = $PS["Data.Identity"]; | |
var Data_Map_Internal = $PS["Data.Map.Internal"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Ord = $PS["Data.Ord"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Foreign = $PS["Foreign"]; | |
var Foreign_Index = $PS["Foreign.Index"]; | |
var Foreign_Keys = $PS["Foreign.Keys"]; | |
var unsafeOptField = $foreign.unsafeOptField_helper(Data_Maybe.Nothing.value)(Data_Maybe.Just.create); | |
var unsafeObjectToStrMap = function (object) { | |
return Data_Either.fromRight()(Control_Monad_Except.runExcept(Control_Bind.bind(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(Foreign_Keys.keys(object))(function (v) { | |
return Control_Bind.bind(Control_Monad_Except_Trans.bindExceptT(Data_Identity.monadIdentity))(Data_Function.flip(Data_Traversable.traverse(Data_Traversable.traversableArray)(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity)))(v)(function (key) { | |
return Control_Apply.apply(Control_Monad_Except_Trans.applyExceptT(Data_Identity.monadIdentity))(Data_Functor.map(Control_Monad_Except_Trans.functorExceptT(Data_Identity.functorIdentity))(Data_Tuple.Tuple.create)(Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(key)))(Data_Functor.map(Control_Monad_Except_Trans.functorExceptT(Data_Identity.functorIdentity))(Foreign.unsafeFromForeign)(Foreign_Index.ix(Foreign_Index.indexableForeign)(Foreign_Index.indexString)(object)(key))); | |
}))(function (v1) { | |
return Control_Applicative.pure(Control_Monad_Except_Trans.applicativeExceptT(Data_Identity.monadIdentity))(Data_Map_Internal.fromFoldable(Data_Ord.ordString)(Data_Foldable.foldableArray)(v1)); | |
}); | |
}))); | |
}; | |
var toNullable = Data_Maybe.maybe($foreign["null"])($foreign.notNullOrUndefined); | |
var toMaybe = function (n) { | |
return $foreign.toMaybeImpl(n, Data_Maybe.Nothing.value, Data_Maybe.Just.create); | |
}; | |
var selectMaybes = function (obj) { | |
return $foreign.selectMaybesImpl(Data_Maybe.isJust)(Data_Maybe.fromJust())(obj); | |
}; | |
exports["unsafeOptField"] = unsafeOptField; | |
exports["toMaybe"] = toMaybe; | |
exports["toNullable"] = toNullable; | |
exports["selectMaybes"] = selectMaybes; | |
exports["unsafeObjectToStrMap"] = unsafeObjectToStrMap; | |
exports["unsafeField"] = $foreign.unsafeField; | |
exports["runThisEffectFn1"] = $foreign.runThisEffectFn1; | |
exports["runThisEffectFn2"] = $foreign.runThisEffectFn2; | |
exports["runThisEffectFn3"] = $foreign.runThisEffectFn3; | |
exports["runThisFn0"] = $foreign.runThisFn0; | |
exports["runThisFn1"] = $foreign.runThisFn1; | |
exports["runThisFn2"] = $foreign.runThisFn2; | |
exports["instanceOf"] = $foreign.instanceOf; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Game"] = $PS["Screeps.Game"] || {}; | |
var exports = $PS["Screeps.Game"]; | |
var $foreign = $PS["Screeps.Game"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Effect = $PS["Effect"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var rooms = Data_Functor.map(Effect.functorEffect)(Screeps_FFI.unsafeObjectToStrMap)($foreign.unsafeGameField("rooms")); | |
var creeps = Data_Functor.map(Effect.functorEffect)(Screeps_FFI.unsafeObjectToStrMap)($foreign.unsafeGameField("creeps")); | |
exports["creeps"] = creeps; | |
exports["rooms"] = rooms; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Room"] = $PS["Screeps.Room"] || {}; | |
var exports = $PS["Screeps.Room"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var find$prime = function (room) { | |
return function (findType) { | |
return function (filter) { | |
return Screeps_FFI.runThisFn2("find")(room)(findType)({ | |
filter: filter | |
}); | |
}; | |
}; | |
}; | |
var find = Screeps_FFI.runThisFn1("find"); | |
var controller = function (room) { | |
return Screeps_FFI.toMaybe(Screeps_FFI.unsafeField("controller")(room)); | |
}; | |
exports["controller"] = controller; | |
exports["find"] = find; | |
exports["find'"] = find$prime; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Colony"] = $PS["Purescreeps.Colony"] || {}; | |
var exports = $PS["Purescreeps.Colony"]; | |
var Data_Array = $PS["Data.Array"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_List = $PS["Data.List"]; | |
var Data_Map_Internal = $PS["Data.Map.Internal"]; | |
var Data_Ord = $PS["Data.Ord"]; | |
var Screeps_FindType = $PS["Screeps.FindType"]; | |
var Screeps_Game = $PS["Screeps.Game"]; | |
var Screeps_Room = $PS["Screeps.Room"]; | |
var Colony = (function () { | |
function Colony(value0) { | |
this.value0 = value0; | |
}; | |
Colony.create = function (value0) { | |
return new Colony(value0); | |
}; | |
return Colony; | |
})(); | |
var findColonies = function __do() { | |
var v = Screeps_Game.rooms(); | |
var v1 = Data_Map_Internal.filter(Data_Ord.ordString)(function (r) { | |
return !Data_Array["null"](Screeps_Room.find(r)(Screeps_FindType.find_my_spawns)); | |
})(v); | |
return Data_List.fromFoldable(Data_Map_Internal.foldableMap)(Data_Functor.map(Data_Map_Internal.functorMap)(Colony.create)(v1)); | |
}; | |
exports["Colony"] = Colony; | |
exports["findColonies"] = findColonies; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Random"] = $PS["Purescreeps.Random"] || {}; | |
var exports = $PS["Purescreeps.Random"]; | |
var Data_Array = $PS["Data.Array"]; | |
var Data_Char = $PS["Data.Char"]; | |
var Data_EuclideanRing = $PS["Data.EuclideanRing"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Data_String_CodeUnits = $PS["Data.String.CodeUnits"]; | |
var hashCode = function (s) { | |
return Data_Foldable.foldl(Data_Foldable.foldableArray)(function (hash) { | |
return function (c) { | |
return ((hash << 5) - hash | 0) + Data_Char.toCharCode(c) | 0; | |
}; | |
})(0)(Data_String_CodeUnits.toCharArray(s)); | |
}; | |
var sampleByStringHash = function (dictShow) { | |
return function (str) { | |
return function (arr) { | |
return Data_Array.index(arr)(Data_EuclideanRing.mod(Data_EuclideanRing.euclideanRingInt)(hashCode(Data_Show.show(dictShow)(str)))(Data_Array.length(arr))); | |
}; | |
}; | |
}; | |
exports["hashCode"] = hashCode; | |
exports["sampleByStringHash"] = sampleByStringHash; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Names"] = $PS["Screeps.Names"] || {}; | |
var exports = $PS["Screeps.Names"]; | |
var Data_Argonaut_Encode_Class = $PS["Data.Argonaut.Encode.Class"]; | |
var Data_Show = $PS["Data.Show"]; | |
var CreepName = function (x) { | |
return x; | |
}; | |
var showCreepName = new Data_Show.Show(function (v) { | |
return v; | |
}); | |
var encodeRoomName = new Data_Argonaut_Encode_Class.EncodeJson(function (v) { | |
return Data_Argonaut_Encode_Class.encodeJson(Data_Argonaut_Encode_Class.encodeJsonJString)(v); | |
}); | |
var asCreepName = CreepName; | |
exports["asCreepName"] = asCreepName; | |
exports["encodeRoomName"] = encodeRoomName; | |
exports["showCreepName"] = showCreepName; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Owned"] = $PS["Screeps.Owned"] || {}; | |
var exports = $PS["Screeps.Owned"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var owner = function (dictOwned) { | |
return function (struc) { | |
return Screeps_FFI.toMaybe(Screeps_FFI.unsafeField("owner")(struc)); | |
}; | |
}; | |
exports["owner"] = owner; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.RoomObject"] = $PS["Screeps.RoomObject"] || {}; | |
var exports = $PS["Screeps.RoomObject"]; | |
var Data_Argonaut_Encode_Class = $PS["Data.Argonaut.Encode.Class"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Screeps_Names = $PS["Screeps.Names"]; | |
var RoomObject = {}; | |
var room = function (dictRoomObject) { | |
return Screeps_FFI.unsafeField("room"); | |
}; | |
var name = Screeps_FFI.unsafeField("name"); | |
var encodeJson = new Data_Argonaut_Encode_Class.EncodeJson((function () { | |
var $14 = Data_Argonaut_Encode_Class.encodeJson(Screeps_Names.encodeRoomName); | |
return function ($15) { | |
return $14(name($15)); | |
}; | |
})()); | |
exports["RoomObject"] = RoomObject; | |
exports["name"] = name; | |
exports["room"] = room; | |
exports["encodeJson"] = encodeJson; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Stores"] = $PS["Screeps.Stores"] || {}; | |
var exports = $PS["Screeps.Stores"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Stores = {}; | |
var storeTotalUsed = function (dictStores) { | |
return function (s) { | |
return Screeps_FFI.runThisFn0("getUsedCapacity")(Screeps_FFI.unsafeField("store")(s)); | |
}; | |
}; | |
var storeTotalFree = function (dictStores) { | |
return function (s) { | |
return Screeps_FFI.runThisFn0("getFreeCapacity")(Screeps_FFI.unsafeField("store")(s)); | |
}; | |
}; | |
exports["Stores"] = Stores; | |
exports["storeTotalUsed"] = storeTotalUsed; | |
exports["storeTotalFree"] = storeTotalFree; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Types"] = $PS["Screeps.Types"] || {}; | |
var exports = $PS["Screeps.Types"]; | |
var TargetPt = (function () { | |
function TargetPt(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
TargetPt.create = function (value0) { | |
return function (value1) { | |
return new TargetPt(value0, value1); | |
}; | |
}; | |
return TargetPt; | |
})(); | |
var TargetObj = (function () { | |
function TargetObj(value0) { | |
this.value0 = value0; | |
}; | |
TargetObj.create = function (value0) { | |
return new TargetObj(value0); | |
}; | |
return TargetObj; | |
})(); | |
var TargetPos = (function () { | |
function TargetPos(value0) { | |
this.value0 = value0; | |
}; | |
TargetPos.create = function (value0) { | |
return new TargetPos(value0); | |
}; | |
return TargetPos; | |
})(); | |
var Owned = {}; | |
exports["Owned"] = Owned; | |
exports["TargetPt"] = TargetPt; | |
exports["TargetObj"] = TargetObj; | |
exports["TargetPos"] = TargetPos; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Creep"] = $PS["Screeps.Creep"] || {}; | |
var exports = $PS["Screeps.Creep"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Screeps_Names = $PS["Screeps.Names"]; | |
var Screeps_Owned = $PS["Screeps.Owned"]; | |
var Screeps_RoomObject = $PS["Screeps.RoomObject"]; | |
var Screeps_Stores = $PS["Screeps.Stores"]; | |
var Screeps_Types = $PS["Screeps.Types"]; | |
var upgradeController = Screeps_FFI.runThisEffectFn1("upgradeController"); | |
var transferToStructure = function (dictStructure) { | |
return Screeps_FFI.runThisEffectFn2("transfer"); | |
}; | |
var moveTo$prime = function (creep) { | |
return function (v) { | |
return function (opts) { | |
if (v instanceof Screeps_Types.TargetPt) { | |
return Screeps_FFI.runThisEffectFn3("moveTo")(creep)(v.value0)(v.value1)(Screeps_FFI.selectMaybes(opts)); | |
}; | |
if (v instanceof Screeps_Types.TargetPos) { | |
return Screeps_FFI.runThisEffectFn2("moveTo")(creep)(v.value0)(Screeps_FFI.selectMaybes(opts)); | |
}; | |
if (v instanceof Screeps_Types.TargetObj) { | |
return Screeps_FFI.runThisEffectFn2("moveTo")(creep)(v.value0)(Screeps_FFI.selectMaybes(opts)); | |
}; | |
throw new Error("Failed pattern match at Screeps.Creep (line 189, column 1 - line 189, column 83): " + [ creep.constructor.name, v.constructor.name, opts.constructor.name ]); | |
}; | |
}; | |
}; | |
var moveOpts = { | |
ignoreCreeps: Data_Maybe.Nothing.value, | |
ignoreDestructibleStructures: Data_Maybe.Nothing.value, | |
ignoreRoads: Data_Maybe.Nothing.value, | |
ignore: Data_Maybe.Nothing.value, | |
avoid: Data_Maybe.Nothing.value, | |
maxOps: Data_Maybe.Nothing.value, | |
heuristicWeight: Data_Maybe.Nothing.value, | |
serialize: Data_Maybe.Nothing.value, | |
maxRooms: Data_Maybe.Nothing.value, | |
reusePath: Data_Maybe.Nothing.value, | |
serializeMemory: Data_Maybe.Nothing.value, | |
noPathFinding: Data_Maybe.Nothing.value, | |
visualizePathStyle: Data_Maybe.Nothing.value | |
}; | |
var harvestSource = Screeps_FFI.runThisEffectFn1("harvest"); | |
var creepStores = Screeps_Stores.Stores; | |
var creepIsRoomObject = Screeps_RoomObject.RoomObject; | |
var creepIsOwned = Screeps_Types.Owned; | |
var name = function (c) { | |
var showOwner = function (v) { | |
if (v instanceof Data_Maybe.Nothing) { | |
return "<unowned creep>"; | |
}; | |
if (v instanceof Data_Maybe.Just) { | |
return "<" + (v.value0.username + ">"); | |
}; | |
throw new Error("Failed pattern match at Screeps.Creep (line 114, column 3 - line 114, column 40): " + [ v.constructor.name ]); | |
}; | |
var v = Screeps_FFI.unsafeOptField("name")(c); | |
if (v instanceof Data_Maybe.Nothing) { | |
return Screeps_Names.asCreepName(showOwner(Screeps_Owned.owner(creepIsOwned)(c))); | |
}; | |
if (v instanceof Data_Maybe.Just) { | |
return v.value0; | |
}; | |
throw new Error("Failed pattern match at Screeps.Creep (line 110, column 10 - line 112, column 14): " + [ v.constructor.name ]); | |
}; | |
exports["moveOpts"] = moveOpts; | |
exports["name"] = name; | |
exports["harvestSource"] = harvestSource; | |
exports["moveTo'"] = moveTo$prime; | |
exports["transferToStructure"] = transferToStructure; | |
exports["upgradeController"] = upgradeController; | |
exports["creepIsRoomObject"] = creepIsRoomObject; | |
exports["creepIsOwned"] = creepIsOwned; | |
exports["creepStores"] = creepStores; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Harvest"] = $PS["Purescreeps.Harvest"] || {}; | |
var exports = $PS["Purescreeps.Harvest"]; | |
var Purescreeps_Random = $PS["Purescreeps.Random"]; | |
var Screeps_Creep = $PS["Screeps.Creep"]; | |
var Screeps_FindType = $PS["Screeps.FindType"]; | |
var Screeps_Names = $PS["Screeps.Names"]; | |
var Screeps_Room = $PS["Screeps.Room"]; | |
var Screeps_RoomObject = $PS["Screeps.RoomObject"]; | |
var findCorrespondingSource = function (creep) { | |
return Purescreeps_Random.sampleByStringHash(Screeps_Names.showCreepName)(Screeps_Creep.name(creep))(Screeps_Room.find(Screeps_RoomObject.room(Screeps_Creep.creepIsRoomObject)(creep))(Screeps_FindType.find_sources)); | |
}; | |
exports["findCorrespondingSource"] = findCorrespondingSource; | |
})(PS); | |
(function(exports) { | |
'use strict'; | |
exports.ok = OK; | |
exports.err_not_owner = ERR_NOT_OWNER; | |
exports.err_no_path = ERR_NO_PATH; | |
exports.err_name_exists = ERR_NAME_EXISTS; | |
exports.err_busy = ERR_BUSY; | |
exports.err_not_found = ERR_NOT_FOUND; | |
exports.err_not_enough_energy = ERR_NOT_ENOUGH_ENERGY; | |
exports.err_not_enough_resources = ERR_NOT_ENOUGH_RESOURCES; | |
exports.err_invalid_target = ERR_INVALID_TARGET; | |
exports.err_full = ERR_FULL; | |
exports.err_not_in_range = ERR_NOT_IN_RANGE; | |
exports.err_invalid_args = ERR_INVALID_ARGS; | |
exports.err_tired = ERR_TIRED; | |
exports.err_no_bodypart = ERR_NO_BODYPART; | |
exports.err_not_enough_extensions = ERR_NOT_ENOUGH_EXTENSIONS; | |
exports.err_rcl_not_enough = ERR_RCL_NOT_ENOUGH; | |
exports.err_gcl_not_enough = ERR_GCL_NOT_ENOUGH; | |
})(PS["Screeps.ReturnCode"] = PS["Screeps.ReturnCode"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.ReturnCode"] = $PS["Screeps.ReturnCode"] || {}; | |
var exports = $PS["Screeps.ReturnCode"]; | |
var $foreign = $PS["Screeps.ReturnCode"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Generic_Rep = $PS["Data.Generic.Rep"]; | |
var Data_Generic_Rep_Eq = $PS["Data.Generic.Rep.Eq"]; | |
var Data_Show = $PS["Data.Show"]; | |
var genericReturnCode = new Data_Generic_Rep.Generic(function (v) { | |
return Data_Generic_Rep.Constructor(v); | |
}, function (v) { | |
return v; | |
}); | |
var eqReturnCode = new Data_Eq.Eq(Data_Generic_Rep_Eq.genericEq(genericReturnCode)(Data_Generic_Rep_Eq.genericEqConstructor(Data_Generic_Rep_Eq.genericEqArgument(Data_Eq.eqInt)))); | |
var showReturnCode = new Data_Show.Show(function (v) { | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.ok)) { | |
return "OK"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_owner)) { | |
return "ERR_NOT_OWNER"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_no_path)) { | |
return "ERR_NO_PATH"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_name_exists)) { | |
return "ERR_NAME_EXISTS"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_busy)) { | |
return "ERR_BUSY"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_found)) { | |
return "ERR_NOT_FOUND"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_enough_energy)) { | |
return "ERR_NOT_ENOUGH_ENERGY"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_enough_resources)) { | |
return "ERR_NOT_ENOUGH_RESOURCES"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_invalid_target)) { | |
return "ERR_INVALID_TARGET"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_full)) { | |
return "ERR_FULL"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_in_range)) { | |
return "ERR_NOT_IN_RANGE"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_invalid_args)) { | |
return "ERR_INVALID_ARGS"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_tired)) { | |
return "ERR_TIRED"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_no_bodypart)) { | |
return "ERR_NO_BODYPART"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_not_enough_extensions)) { | |
return "ERR_NOT_ENOUGH_EXTENSIONS"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_rcl_not_enough)) { | |
return "ERR_RCL_NOT_ENOUGH"; | |
}; | |
if (Data_Eq.eq(eqReturnCode)(v)($foreign.err_gcl_not_enough)) { | |
return "ERR_GCL_NOT_ENOUGH"; | |
}; | |
return Data_Show.show(Data_Show.showInt)(v); | |
}); | |
exports["genericReturnCode"] = genericReturnCode; | |
exports["eqReturnCode"] = eqReturnCode; | |
exports["showReturnCode"] = showReturnCode; | |
exports["ok"] = $foreign.ok; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.ReturnCode"] = $PS["Purescreeps.ReturnCode"] || {}; | |
var exports = $PS["Purescreeps.ReturnCode"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Data_Unit = $PS["Data.Unit"]; | |
var Effect = $PS["Effect"]; | |
var Screeps_ReturnCode = $PS["Screeps.ReturnCode"]; | |
var toStatus = function (c) { | |
var $0 = Data_Eq.eq(Screeps_ReturnCode.eqReturnCode)(c)(Screeps_ReturnCode.ok); | |
if ($0) { | |
return new Data_Either.Right(Data_Unit.unit); | |
}; | |
return new Data_Either.Left(Data_Show.show(Screeps_ReturnCode.showReturnCode)(c)); | |
}; | |
var orElse = function (eff) { | |
return function (status) { | |
return Data_Either.either(function (l) { | |
return eff; | |
})(function (r) { | |
return Control_Applicative.pure(Effect.applicativeEffect)(status); | |
})(status); | |
}; | |
}; | |
exports["toStatus"] = toStatus; | |
exports["orElse"] = orElse; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Id"] = $PS["Screeps.Id"] || {}; | |
var exports = $PS["Screeps.Id"]; | |
var HasId = function (validate) { | |
this.validate = validate; | |
}; | |
var validate = function (dict) { | |
return dict.validate; | |
}; | |
exports["HasId"] = HasId; | |
exports["validate"] = validate; | |
})(PS); | |
(function(exports) { | |
exports.structure_spawn = STRUCTURE_SPAWN; | |
exports.structure_extension = STRUCTURE_EXTENSION; | |
exports.structure_tower = STRUCTURE_TOWER; | |
})(PS["Screeps.Structure"] = PS["Screeps.Structure"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Type.Proxy"] = $PS["Type.Proxy"] || {}; | |
var exports = $PS["Type.Proxy"]; | |
var $$Proxy = (function () { | |
function $$Proxy() { | |
}; | |
$$Proxy.value = new $$Proxy(); | |
return $$Proxy; | |
})(); | |
exports["Proxy"] = $$Proxy; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Structure"] = $PS["Screeps.Structure"] || {}; | |
var exports = $PS["Screeps.Structure"]; | |
var $foreign = $PS["Screeps.Structure"]; | |
var Data_Boolean = $PS["Data.Boolean"]; | |
var Data_Eq = $PS["Data.Eq"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Type_Proxy = $PS["Type.Proxy"]; | |
var Structural = {}; | |
var Structure = function (HasId2, RoomObject0, Structural1, _structureType) { | |
this.HasId2 = HasId2; | |
this.RoomObject0 = RoomObject0; | |
this.Structural1 = Structural1; | |
this["_structureType"] = _structureType; | |
}; | |
var structureType = function (dictStructural) { | |
return Screeps_FFI.unsafeField("structureType"); | |
}; | |
var eqStructureType = Data_Eq.eqString; | |
var anyStructureIsStructural = Structural; | |
var unsafeCast = function (dictStructure) { | |
return function (t) { | |
return function (struc) { | |
if (Data_Eq.eq(eqStructureType)(structureType(anyStructureIsStructural)(struc))(t)) { | |
return Data_Maybe.Just.create(struc); | |
}; | |
if (Data_Boolean.otherwise) { | |
return Data_Maybe.Nothing.value; | |
}; | |
throw new Error("Failed pattern match at Screeps.Structure (line 121, column 1 - line 121, column 80): " + [ t.constructor.name, struc.constructor.name ]); | |
}; | |
}; | |
}; | |
var _structureType = function (dict) { | |
return dict["_structureType"]; | |
}; | |
var fromAnyStructure = function (dictStructure) { | |
var from$prime = function (dictStructure1) { | |
return function (proxy) { | |
return unsafeCast(dictStructure)(_structureType(dictStructure)(proxy)); | |
}; | |
}; | |
return from$prime(dictStructure)(Type_Proxy["Proxy"].value); | |
}; | |
exports["_structureType"] = _structureType; | |
exports["Structural"] = Structural; | |
exports["Structure"] = Structure; | |
exports["structureType"] = structureType; | |
exports["unsafeCast"] = unsafeCast; | |
exports["fromAnyStructure"] = fromAnyStructure; | |
exports["eqStructureType"] = eqStructureType; | |
exports["anyStructureIsStructural"] = anyStructureIsStructural; | |
exports["structure_spawn"] = $foreign.structure_spawn; | |
exports["structure_extension"] = $foreign.structure_extension; | |
exports["structure_tower"] = $foreign.structure_tower; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Refillable"] = $PS["Screeps.Refillable"] || {}; | |
var exports = $PS["Screeps.Refillable"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Screeps_Id = $PS["Screeps.Id"]; | |
var Screeps_RoomObject = $PS["Screeps.RoomObject"]; | |
var Screeps_Structure = $PS["Screeps.Structure"]; | |
var Screeps_Types = $PS["Screeps.Types"]; | |
var Refillable = function (Owned1, Structure0) { | |
this.Owned1 = Owned1; | |
this.Structure0 = Structure0; | |
}; | |
var refillableIsStructural = Screeps_Structure.Structural; | |
var refillableIsOwned = Screeps_Types.Owned; | |
var energyCapacity = function (dictRefillable) { | |
return Screeps_FFI.unsafeField("energyCapacity"); | |
}; | |
var energy = function (dictRefillable) { | |
return Screeps_FFI.unsafeField("energy"); | |
}; | |
var isNotFull = function (dictRefillable) { | |
return function (x) { | |
return energy(dictRefillable)(x) < energyCapacity(dictRefillable)(x); | |
}; | |
}; | |
var anyRefillableIsRoomObject = Screeps_RoomObject.RoomObject; | |
var anyRefillableHasId = new Screeps_Id.HasId(function (o) { | |
return Screeps_FFI.instanceOf("StructureExtension")(o) || (Screeps_FFI.instanceOf("StructureSpawn")(o) || (Screeps_FFI.instanceOf("StructurePowerSpawn")(o) || (Screeps_FFI.instanceOf("StructureTower")(o) || (Screeps_FFI.instanceOf("StructureNuker")(o) || (Screeps_FFI.instanceOf("StructureLink")(o) || Screeps_FFI.instanceOf("StructureLab")(o)))))); | |
}); | |
var refillableIsStructure = new Screeps_Structure.Structure(function () { | |
return anyRefillableHasId; | |
}, function () { | |
return anyRefillableIsRoomObject; | |
}, function () { | |
return refillableIsStructural; | |
}, function (v) { | |
return "<refillable>"; | |
}); | |
var toRefillable = function (dictStructure) { | |
return function (r) { | |
var $6 = Screeps_Id.validate(anyRefillableHasId)(r); | |
if ($6) { | |
return new Data_Maybe.Just(r); | |
}; | |
return Data_Maybe.Nothing.value; | |
}; | |
}; | |
var anyRefillable = new Refillable(function () { | |
return refillableIsOwned; | |
}, function () { | |
return refillableIsStructure; | |
}); | |
exports["Refillable"] = Refillable; | |
exports["energy"] = energy; | |
exports["energyCapacity"] = energyCapacity; | |
exports["toRefillable"] = toRefillable; | |
exports["isNotFull"] = isNotFull; | |
exports["anyRefillableIsRoomObject"] = anyRefillableIsRoomObject; | |
exports["anyRefillableHasId"] = anyRefillableHasId; | |
exports["refillableIsStructural"] = refillableIsStructural; | |
exports["refillableIsOwned"] = refillableIsOwned; | |
exports["refillableIsStructure"] = refillableIsStructure; | |
exports["anyRefillable"] = anyRefillable; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.createCreepPrimeImpl = function (structure) { | |
return function (parts) { | |
return function (name) { | |
return function (memory) { | |
return function (left) { | |
return function (right) { | |
return function () { | |
var result = structure.createCreep(parts, name, memory); | |
if (typeof result === "string") { | |
return right(result); | |
} else { | |
return left(result); | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
} | |
})(PS["Screeps.Spawn"] = PS["Screeps.Spawn"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Spawn"] = $PS["Screeps.Spawn"] || {}; | |
var exports = $PS["Screeps.Spawn"]; | |
var $foreign = $PS["Screeps.Spawn"]; | |
var Data_Argonaut_Encode_Class = $PS["Data.Argonaut.Encode.Class"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Screeps_FFI = $PS["Screeps.FFI"]; | |
var Screeps_Id = $PS["Screeps.Id"]; | |
var Screeps_RoomObject = $PS["Screeps.RoomObject"]; | |
var Screeps_Structure = $PS["Screeps.Structure"]; | |
var structuralSpawn = Screeps_Structure.Structural; | |
var spawnHasId = new Screeps_Id.HasId(Screeps_FFI.instanceOf("StructureSpawn")); | |
var objectSpawn = Screeps_RoomObject.RoomObject; | |
var structureSpawn = new Screeps_Structure.Structure(function () { | |
return spawnHasId; | |
}, function () { | |
return objectSpawn; | |
}, function () { | |
return structuralSpawn; | |
}, function (v) { | |
return Screeps_Structure.structure_spawn; | |
}); | |
var createCreep$prime = function (dictEncodeJson) { | |
return function (spawn) { | |
return function (parts) { | |
return function (name$prime) { | |
return function (mem) { | |
return $foreign.createCreepPrimeImpl(spawn)(parts)(Screeps_FFI.toNullable(name$prime))(Data_Argonaut_Encode_Class.encodeJson(dictEncodeJson)(mem))(Data_Either.Left.create)(Data_Either.Right.create); | |
}; | |
}; | |
}; | |
}; | |
}; | |
exports["createCreep'"] = createCreep$prime; | |
exports["objectSpawn"] = objectSpawn; | |
exports["spawnHasId"] = spawnHasId; | |
exports["structuralSpawn"] = structuralSpawn; | |
exports["structureSpawn"] = structureSpawn; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Work"] = $PS["Purescreeps.Work"] || {}; | |
var exports = $PS["Purescreeps.Work"]; | |
var Data_Array = $PS["Data.Array"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Screeps_FindType = $PS["Screeps.FindType"]; | |
var Screeps_Refillable = $PS["Screeps.Refillable"]; | |
var Screeps_Room = $PS["Screeps.Room"]; | |
var Screeps_Spawn = $PS["Screeps.Spawn"]; | |
var Screeps_Structure = $PS["Screeps.Structure"]; | |
var findMyEmptySpawns = function (room) { | |
return Data_Array.filter(function (s) { | |
return Screeps_Refillable.isNotFull(Screeps_Refillable.anyRefillable)(s); | |
})(Data_Array.catMaybes(Data_Functor.map(Data_Functor.functorArray)(Screeps_Refillable.toRefillable(Screeps_Spawn.structureSpawn))(Data_Array.catMaybes(Data_Functor.map(Data_Functor.functorArray)(Screeps_Structure.fromAnyStructure(Screeps_Spawn.structureSpawn))(Screeps_Room["find'"](room)(Screeps_FindType.find_structures)(function (s) { | |
return Data_Foldable.elem(Data_Foldable.foldableArray)(Screeps_Structure.eqStructureType)(Screeps_Structure.structureType(Screeps_Structure.anyStructureIsStructural)(s))([ Screeps_Structure.structure_extension, Screeps_Structure.structure_spawn, Screeps_Structure.structure_tower ]); | |
})))))); | |
}; | |
exports["findMyEmptySpawns"] = findMyEmptySpawns; | |
})(PS); | |
(function(exports) { | |
exports.part_move = MOVE; | |
exports.part_work = WORK; | |
exports.part_carry = CARRY; | |
})(PS["Screeps.BodyPartType"] = PS["Screeps.BodyPartType"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.BodyPartType"] = $PS["Screeps.BodyPartType"] || {}; | |
var exports = $PS["Screeps.BodyPartType"]; | |
var $foreign = $PS["Screeps.BodyPartType"]; | |
exports["part_move"] = $foreign.part_move; | |
exports["part_work"] = $foreign.part_work; | |
exports["part_carry"] = $foreign.part_carry; | |
})(PS); | |
(function(exports) { | |
"use strict"; | |
exports.resource_energy = RESOURCE_ENERGY; | |
})(PS["Screeps.Resource"] = PS["Screeps.Resource"] || {}); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Screeps.Resource"] = $PS["Screeps.Resource"] || {}; | |
var exports = $PS["Screeps.Resource"]; | |
var $foreign = $PS["Screeps.Resource"]; | |
exports["resource_energy"] = $foreign.resource_energy; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Creep"] = $PS["Purescreeps.Creep"] || {}; | |
var exports = $PS["Purescreeps.Creep"]; | |
var Control_Applicative = $PS["Control.Applicative"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Control_Monad = $PS["Control.Monad"]; | |
var Data_Array = $PS["Data.Array"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Data_Exists = $PS["Data.Exists"]; | |
var Data_Foldable = $PS["Data.Foldable"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_List_Types = $PS["Data.List.Types"]; | |
var Data_Map_Internal = $PS["Data.Map.Internal"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Monoid = $PS["Data.Monoid"]; | |
var Data_Semigroup = $PS["Data.Semigroup"]; | |
var Data_Semiring = $PS["Data.Semiring"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Effect = $PS["Effect"]; | |
var Purescreeps_Harvest = $PS["Purescreeps.Harvest"]; | |
var Purescreeps_ReturnCode = $PS["Purescreeps.ReturnCode"]; | |
var Purescreeps_Work = $PS["Purescreeps.Work"]; | |
var Screeps_BodyPartType = $PS["Screeps.BodyPartType"]; | |
var Screeps_Creep = $PS["Screeps.Creep"]; | |
var Screeps_Refillable = $PS["Screeps.Refillable"]; | |
var Screeps_Resource = $PS["Screeps.Resource"]; | |
var Screeps_Room = $PS["Screeps.Room"]; | |
var Screeps_Stores = $PS["Screeps.Stores"]; | |
var Screeps_Types = $PS["Screeps.Types"]; | |
var TargetF = (function () { | |
function TargetF(value0, value1) { | |
this.value0 = value0; | |
this.value1 = value1; | |
}; | |
TargetF.create = function (value0) { | |
return function (value1) { | |
return new TargetF(value0, value1); | |
}; | |
}; | |
return TargetF; | |
})(); | |
var toTargetToJob = function (f) { | |
return function (target) { | |
return function (creep) { | |
return Control_Monad.liftM1(Effect.monadEffect)(Purescreeps_ReturnCode.toStatus)(f(creep)(target)); | |
}; | |
}; | |
}; | |
var transferEnergyToStructure$prime = function (dictStructure) { | |
return toTargetToJob(function (c) { | |
return function (t) { | |
return Screeps_Creep.transferToStructure(dictStructure)(c)(t)(Screeps_Resource.resource_energy); | |
}; | |
}); | |
}; | |
var upgradeController$prime = toTargetToJob(Screeps_Creep.upgradeController); | |
var moveToAction = function (action) { | |
return function (target) { | |
return function (creep) { | |
return Control_Bind.bind(Effect.bindEffect)(action(target)(creep))(Purescreeps_ReturnCode.orElse(toTargetToJob(function (c) { | |
return function (t) { | |
return Screeps_Creep["moveTo'"](c)(new Screeps_Types.TargetObj(t))({ | |
ignoreCreeps: Screeps_Creep.moveOpts.ignoreCreeps, | |
ignoreDestructibleStructures: Screeps_Creep.moveOpts.ignoreDestructibleStructures, | |
ignoreRoads: Screeps_Creep.moveOpts.ignoreRoads, | |
ignore: Screeps_Creep.moveOpts.ignore, | |
avoid: Screeps_Creep.moveOpts.avoid, | |
maxOps: Screeps_Creep.moveOpts.maxOps, | |
heuristicWeight: Screeps_Creep.moveOpts.heuristicWeight, | |
serialize: Screeps_Creep.moveOpts.serialize, | |
maxRooms: Screeps_Creep.moveOpts.maxRooms, | |
reusePath: Screeps_Creep.moveOpts.reusePath, | |
serializeMemory: Screeps_Creep.moveOpts.serializeMemory, | |
noPathFinding: Screeps_Creep.moveOpts.noPathFinding, | |
visualizePathStyle: new Data_Maybe.Just({}) | |
}); | |
}; | |
})(target)(creep))); | |
}; | |
}; | |
}; | |
var harvestSource$prime = toTargetToJob(Screeps_Creep.harvestSource); | |
var runTarget = (function () { | |
var runTarget$prime = function (v) { | |
return function (creep) { | |
var $6 = { | |
source: Purescreeps_Harvest.findCorrespondingSource(creep) | |
}; | |
if ($6.source instanceof Data_Maybe.Just) { | |
var $7 = Screeps_Stores.storeTotalUsed(Screeps_Creep.creepStores)(creep) === 0; | |
if ($7) { | |
return moveToAction(harvestSource$prime)($6.source.value0)(creep); | |
}; | |
var $8 = Screeps_Stores.storeTotalFree(Screeps_Creep.creepStores)(creep) === 0; | |
if ($8) { | |
return moveToAction(v.value0)(v.value1)(creep); | |
}; | |
return Control_Bind.bind(Effect.bindEffect)(harvestSource$prime($6.source.value0)(creep))(Purescreeps_ReturnCode.orElse(moveToAction(v.value0)(v.value1)(creep))); | |
}; | |
return Control_Applicative.pure(Effect.applicativeEffect)(new Data_Either.Left("No source/controller found")); | |
}; | |
}; | |
return Data_Exists.runExists(runTarget$prime); | |
})(); | |
var genericCreep = function (capacity) { | |
if (capacity < 50) { | |
return [ ]; | |
}; | |
if (capacity < 100) { | |
return [ Screeps_BodyPartType.part_move ]; | |
}; | |
if (capacity < 150) { | |
return [ Screeps_BodyPartType.part_carry, Screeps_BodyPartType.part_move ]; | |
}; | |
if (capacity < 250) { | |
return [ Screeps_BodyPartType.part_work, Screeps_BodyPartType.part_carry, Screeps_BodyPartType.part_move ]; | |
}; | |
return Data_Array.concat([ genericCreep(capacity - 200 | 0), [ Screeps_BodyPartType.part_work, Screeps_BodyPartType.part_carry, Screeps_BodyPartType.part_move ] ]); | |
}; | |
var generateFillStoreTargets = function (colonies) { | |
return function (creeps) { | |
return Data_Foldable.foldMap(Data_List_Types.foldableList)(Data_Monoid.monoidArray)(function (v) { | |
return Data_Functor.map(Data_Functor.functorArray)(function (store) { | |
return Data_Exists.mkExists(new TargetF(transferEnergyToStructure$prime(Screeps_Refillable.refillableIsStructure), store)); | |
})(Purescreeps_Work.findMyEmptySpawns(v.value0)); | |
})(colonies); | |
}; | |
}; | |
var generateControllerUpgradeTargets = function (colonies) { | |
return function (creeps) { | |
return Data_Foldable.foldMap(Data_List_Types.foldableList)(Data_Monoid.monoidArray)(function (v) { | |
return Data_Functor.map(Data_Functor.functorArray)(function (controller) { | |
return Data_Exists.mkExists(new TargetF(upgradeController$prime, controller)); | |
})(Data_Array.catMaybes(Data_Array.replicate(Data_Foldable.length(Data_Map_Internal.foldableMap)(Data_Semiring.semiringInt)(creeps))(Screeps_Room.controller(v.value0)))); | |
})(colonies); | |
}; | |
}; | |
var generateTargets = function (colonies) { | |
return function (creeps) { | |
return Data_Semigroup.append(Data_Semigroup.semigroupArray)(generateFillStoreTargets(colonies)(creeps))(generateControllerUpgradeTargets(colonies)(creeps)); | |
}; | |
}; | |
var assignTargets = function (targets) { | |
return function (creeps) { | |
return Data_Traversable.traverse(Data_Traversable.traversableArray)(Effect.applicativeEffect)(Data_Traversable.sequence(Data_Tuple.traversableTuple)(Effect.applicativeEffect))(Data_Array.zipWith(function (target) { | |
return function (creep) { | |
return Data_Functor.map(Data_Tuple.functorTuple)(runTarget(target))(creep); | |
}; | |
})(targets)(creeps)); | |
}; | |
}; | |
exports["genericCreep"] = genericCreep; | |
exports["toTargetToJob"] = toTargetToJob; | |
exports["moveToAction"] = moveToAction; | |
exports["TargetF"] = TargetF; | |
exports["runTarget"] = runTarget; | |
exports["generateControllerUpgradeTargets"] = generateControllerUpgradeTargets; | |
exports["generateFillStoreTargets"] = generateFillStoreTargets; | |
exports["generateTargets"] = generateTargets; | |
exports["assignTargets"] = assignTargets; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Purescreeps.Spawn"] = $PS["Purescreeps.Spawn"] || {}; | |
var exports = $PS["Purescreeps.Spawn"]; | |
var Data_Argonaut_Encode_Class = $PS["Data.Argonaut.Encode.Class"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_Maybe = $PS["Data.Maybe"]; | |
var Data_Symbol = $PS["Data.Symbol"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Effect = $PS["Effect"]; | |
var Purescreeps_Creep = $PS["Purescreeps.Creep"]; | |
var Screeps_FindType = $PS["Screeps.FindType"]; | |
var Screeps_Room = $PS["Screeps.Room"]; | |
var Screeps_RoomObject = $PS["Screeps.RoomObject"]; | |
var Screeps_Spawn = $PS["Screeps.Spawn"]; | |
var findSpawns = function (v) { | |
return Screeps_Room.find(v.value0)(Screeps_FindType.find_my_spawns); | |
}; | |
var findCapacity = function (v) { | |
return 300; | |
}; | |
var createSpecifiedCreep = function (spawn) { | |
return function (spec) { | |
return Screeps_Spawn["createCreep'"](Data_Argonaut_Encode_Class.encodeRecord(Data_Argonaut_Encode_Class.gEncodeJsonCons(Screeps_RoomObject.encodeJson)(Data_Argonaut_Encode_Class.gEncodeJsonNil)(new Data_Symbol.IsSymbol(function () { | |
return "colony"; | |
}))())())(spawn)(spec)(Data_Maybe.Nothing.value)({ | |
colony: Screeps_RoomObject.room(Screeps_Spawn.objectSpawn)(spawn) | |
}); | |
}; | |
}; | |
var createCreeps = function (colony) { | |
return Data_Traversable.sequence(Data_Traversable.traversableArray)(Effect.applicativeEffect)(Data_Functor.map(Data_Functor.functorArray)(function (s) { | |
return createSpecifiedCreep(s)(Purescreeps_Creep.genericCreep(findCapacity(colony))); | |
})(findSpawns(colony))); | |
}; | |
exports["createSpecifiedCreep"] = createSpecifiedCreep; | |
exports["findSpawns"] = findSpawns; | |
exports["findCapacity"] = findCapacity; | |
exports["createCreeps"] = createCreeps; | |
})(PS); | |
(function($PS) { | |
// Generated by purs version 0.13.2 | |
"use strict"; | |
$PS["Main"] = $PS["Main"] || {}; | |
var exports = $PS["Main"]; | |
var Control_Bind = $PS["Control.Bind"]; | |
var Data_Either = $PS["Data.Either"]; | |
var Data_Functor = $PS["Data.Functor"]; | |
var Data_List_Types = $PS["Data.List.Types"]; | |
var Data_Map_Internal = $PS["Data.Map.Internal"]; | |
var Data_Show = $PS["Data.Show"]; | |
var Data_Traversable = $PS["Data.Traversable"]; | |
var Data_Tuple = $PS["Data.Tuple"]; | |
var Data_Unfoldable = $PS["Data.Unfoldable"]; | |
var Data_Unit = $PS["Data.Unit"]; | |
var Effect = $PS["Effect"]; | |
var Effect_Console = $PS["Effect.Console"]; | |
var Purescreeps_Colony = $PS["Purescreeps.Colony"]; | |
var Purescreeps_Creep = $PS["Purescreeps.Creep"]; | |
var Purescreeps_Spawn = $PS["Purescreeps.Spawn"]; | |
var Screeps_Game = $PS["Screeps.Game"]; | |
var Screeps_ReturnCode = $PS["Screeps.ReturnCode"]; | |
var main = function __do() { | |
var v = Purescreeps_Colony.findColonies(); | |
Control_Bind.bind(Effect.bindEffect)(Data_Traversable.sequence(Data_List_Types.traversableList)(Effect.applicativeEffect)(Data_Functor.map(Data_List_Types.functorList)(Purescreeps_Spawn.createCreeps)(v)))(Effect_Console.logShow(Data_List_Types.showList(Data_Show.showArray(Data_Either.showEither(Screeps_ReturnCode.showReturnCode)(Data_Show.showString)))))(); | |
var v1 = Screeps_Game.creeps(); | |
return Control_Bind.bind(Effect.bindEffect)(Purescreeps_Creep.assignTargets(Purescreeps_Creep.generateTargets(v)(v1))(Data_Map_Internal.toUnfoldable(Data_Unfoldable.unfoldableArray)(v1)))(Effect_Console.logShow(Data_Show.showArray(Data_Tuple.showTuple(Data_Show.showString)(Data_Either.showEither(Data_Show.showString)(Data_Unit.showUnit)))))(); | |
}; | |
exports["main"] = main; | |
})(PS);module.exports.loop = PS["Main"].main |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment