LambdasImpl
libretto.lambda.LambdasImpl
opaque class LambdasImpl[-⚬[_, _], |*|[_, _], V](syntheticPairVar: (V, V) => V, universalSplit: Option[[X] => (x$1: Unit) => X -⚬ X |*| X], universalDiscard: Option[[X, Y] => (x$1: Unit) => X |*| Y -⚬ Y])(using ssc: SymmetricSemigroupalCategory[-⚬, |*|], inj: BiInjective[|*|]) extends Lambdas[-⚬, |*|, V]
Attributes
- Graph
-
- Supertypes
Members list
Type members
Classlikes
object AbstractFun extends AbstractFuns
Attributes
- Supertypes
- Self type
-
AbstractFun.type
object CapturingFun
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
CapturingFun.type
AST of an expression, created by user code, before translation to point-free representation, containing intermediate Vars. Non-linear: includes projections and multiple occurrences of the same variable.
object Unvar
Inherited classlikes
trait AbstractFuns
Attributes
- Inherited from:
- Lambdas
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object AbstractFun.type
trait Contexts
trait Exprs
Attributes
- Inherited from:
- Lambdas
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object LinCheck
Attributes
- Inherited from:
- Lambdas
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
object given_UniqueTypeArg_Expr extends UniqueTypeArg[Expr]
Attributes
- Inherited from:
- Lambdas
- Supertypes
Types
Value members
Concrete methods
override def eliminateLocalVariables[A, B](boundVar: Var[A], expr: Expr[B])(using Context): Delambdified[A, B]
Attributes
- Definition Classes
def eliminateLocalVariablesFromForest[A, B](boundVar: Var[A], exprs: Forest[B])(using Context): Delambdified[A, B]
Inherited methods
def delambdifyNested[A, B](varName: V, f: Context ?=> Expr[A] => Expr[B])(using parent: Context): Delambdified[A, B]
Attributes
- Inherited from:
- Lambdas
Attributes
- Inherited from:
- Lambdas
In this article