Boxable
Functions for boxing and unboxing values, and for lifting functions to operate on boxed values.
Definitions
Lifts the given vector f of 1-tuples to a functional on boxed values that ignores its argument.
def lift0X2(f: Vector[(o1, o2)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[o1], Order[o2]§ SourceLifts the given vector f of 2-tuples to a functional on boxed values that ignores its argument.
def lift0X3(f: Vector[(o1, o2, o3)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[o1], Order[o2], Order[o3]§ SourceLifts the given vector f of 3-tuples to a functional on boxed values that ignores its argument.
def lift0X4(f: Vector[(o1, o2, o3, o4)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given vector f of 4-tuples to a functional on boxed values that ignores its argument.
def lift0X5(f: Vector[(o1, o2, o3, o4, o5)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given vector f of 5-tuples to a functional on boxed values that ignores its argument.
Lifts the given function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift1X1(f: i1 -> Vector[o1]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[o1]§ SourceLifts the given function f of 1 argument returning a vector of 1-tuples to operate on boxed values.
def lift1X2(f: i1 -> Vector[(o1, o2)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[o1], Order[o2]§ SourceLifts the given function f of 1 argument returning a vector of 2-tuples to operate on boxed values.
def lift1X3(f: i1 -> Vector[(o1, o2, o3)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[o1], Order[o2], Order[o3]§ SourceLifts the given function f of 1 argument returning a vector of 3-tuples to operate on boxed values.
def lift1X4(f: i1 -> Vector[(o1, o2, o3, o4)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given function f of 1 argument returning a vector of 4-tuples to operate on boxed values.
def lift1X5(f: i1 -> Vector[(o1, o2, o3, o4, o5)]): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given function f of 1 argument returning a vector of 5-tuples to operate on boxed values.
Lifts the given Boolean-valued function f to operate on boxed values.
def lift2(f: t1 -> (t2 -> t)): Boxed -> (Boxed -> Boxed) with Order[t1], Order[t2], Order[t]§ SourceLifts the given function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift2X1(f: i1 -> (i2 -> Vector[o1])): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[o1]§ SourceLifts the given function f of 2 arguments returning a vector of 1-tuples to operate on boxed values.
def lift2X2(f: i1 -> (i2 -> Vector[(o1, o2)])): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[o1], Order[o2]§ SourceLifts the given function f of 2 arguments returning a vector of 2-tuples to operate on boxed values.
def lift2X3(f: i1 -> (i2 -> Vector[(o1, o2, o3)])): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[o1], Order[o2], Order[o3]§ SourceLifts the given function f of 2 arguments returning a vector of 3-tuples to operate on boxed values.
def lift2X4(f: i1 -> (i2 -> Vector[(o1, o2, o3, o4)])): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given function f of 2 arguments returning a vector of 4-tuples to operate on boxed values.
def lift2X5(f: i1 -> (i2 -> Vector[(o1, o2, o3, o4, o5)])): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given function f of 2 arguments returning a vector of 5-tuples to operate on boxed values.
Lifts the given Boolean-valued function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift3(f: t1 -> (t2 -> (t3 -> t))): Boxed -> (Boxed -> (Boxed -> Boxed)) with Order[t1], Order[t2], Order[t3], Order[t]§ SourceLifts the given function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift3X1(f: i1 -> (i2 -> (i3 -> Vector[o1]))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[o1]§ SourceLifts the given function f of 3 arguments returning a vector of 1-tuples to operate on boxed values.
def lift3X2(f: i1 -> (i2 -> (i3 -> Vector[(o1, o2)]))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[o1], Order[o2]§ SourceLifts the given function f of 3 arguments returning a vector of 2-tuples to operate on boxed values.
def lift3X3(f: i1 -> (i2 -> (i3 -> Vector[(o1, o2, o3)]))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[o1], Order[o2], Order[o3]§ SourceLifts the given function f of 3 arguments returning a vector of 3-tuples to operate on boxed values.
def lift3X4(f: i1 -> (i2 -> (i3 -> Vector[(o1, o2, o3, o4)]))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given function f of 3 arguments returning a vector of 4-tuples to operate on boxed values.
def lift3X5(f: i1 -> (i2 -> (i3 -> Vector[(o1, o2, o3, o4, o5)]))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given function f of 3 arguments returning a vector of 5-tuples to operate on boxed values.
def lift3b(f: t1 -> (t2 -> (t3 -> Bool))): Boxed -> (Boxed -> (Boxed -> Bool)) with Order[t1], Order[t2], Order[t3]§ SourceLifts the given Boolean-valued function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift4(f: t1 -> (t2 -> (t3 -> (t4 -> t)))): Boxed -> (Boxed -> (Boxed -> (Boxed -> Boxed))) with Order[t1], Order[t2], Order[t3], Order[t4], Order[t]§ SourceLifts the given function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift4X1(f: i1 -> (i2 -> (i3 -> (i4 -> Vector[o1])))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[o1]§ SourceLifts the given function f of 4 arguments returning a vector of 1-tuples to operate on boxed values.
def lift4X2(f: i1 -> (i2 -> (i3 -> (i4 -> Vector[(o1, o2)])))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[o1], Order[o2]§ SourceLifts the given function f of 4 arguments returning a vector of 2-tuples to operate on boxed values.
def lift4X3(f: i1 -> (i2 -> (i3 -> (i4 -> Vector[(o1, o2, o3)])))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[o1], Order[o2], Order[o3]§ SourceLifts the given function f of 4 arguments returning a vector of 3-tuples to operate on boxed values.
def lift4X4(f: i1 -> (i2 -> (i3 -> (i4 -> Vector[(o1, o2, o3, o4)])))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given function f of 4 arguments returning a vector of 4-tuples to operate on boxed values.
def lift4X5(f: i1 -> (i2 -> (i3 -> (i4 -> Vector[(o1, o2, o3, o4, o5)])))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given function f of 4 arguments returning a vector of 5-tuples to operate on boxed values.
def lift4b(f: t1 -> (t2 -> (t3 -> (t4 -> Bool)))): Boxed -> (Boxed -> (Boxed -> (Boxed -> Bool))) with Order[t1], Order[t2], Order[t3], Order[t4]§ SourceLifts the given Boolean-valued function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift5(f: t1 -> (t2 -> (t3 -> (t4 -> (t5 -> t))))): Boxed -> (Boxed -> (Boxed -> (Boxed -> (Boxed -> Boxed)))) with Order[t1], Order[t2], Order[t3], Order[t4], Order[t5], Order[t]§ SourceLifts the given function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.
def lift5X1(f: i1 -> (i2 -> (i3 -> (i4 -> (i5 -> Vector[o1]))))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[i5], Order[o1]§ SourceLifts the given function f of 5 arguments returning a vector of 1-tuples to operate on boxed values.
def lift5X2(f: i1 -> (i2 -> (i3 -> (i4 -> (i5 -> Vector[(o1, o2)]))))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[i5], Order[o1], Order[o2]§ SourceLifts the given function f of 5 arguments returning a vector of 2-tuples to operate on boxed values.
def lift5X3(f: i1 -> (i2 -> (i3 -> (i4 -> (i5 -> Vector[(o1, o2, o3)]))))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[i5], Order[o1], Order[o2], Order[o3]§ SourceLifts the given function f of 5 arguments returning a vector of 3-tuples to operate on boxed values.
def lift5X4(f: i1 -> (i2 -> (i3 -> (i4 -> (i5 -> Vector[(o1, o2, o3, o4)]))))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[i5], Order[o1], Order[o2], Order[o3], Order[o4]§ SourceLifts the given function f of 5 arguments returning a vector of 4-tuples to operate on boxed values.
def lift5X5(f: i1 -> (i2 -> (i3 -> (i4 -> (i5 -> Vector[(o1, o2, o3, o4, o5)]))))): Vector[Boxed] -> Vector[Vector[Boxed]] with Order[i1], Order[i2], Order[i3], Order[i4], Order[i5], Order[o1], Order[o2], Order[o3], Order[o4], Order[o5]§ SourceLifts the given function f of 5 arguments returning a vector of 5-tuples to operate on boxed values.
def lift5b(f: t1 -> (t2 -> (t3 -> (t4 -> (t5 -> Bool))))): Boxed -> (Boxed -> (Boxed -> (Boxed -> (Boxed -> Bool)))) with Order[t1], Order[t2], Order[t3], Order[t4], Order[t5]§ SourceLifts the given Boolean-valued function f to operate on boxed values.
Note: Accepts a curried function, but returns a non-curried function.