hydra.lisp.coder
package hydra.lisp.coder
Members list
Value members
Concrete methods
def encodeApplication[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(rawFun: Term)(rawArg: Term): Either[T1, Expression]
def encodeLambdaTerm[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(lam: Lambda): Either[T1, Expression]
def encodeLetAsLambdaApp[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(bindings: Seq[Binding])(body: Term): Either[T1, Expression]
def encodeLetAsNative[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(bindings: Seq[Binding])(body: Term): Either[T1, Expression]
def encodeProjectionElim[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(proj: Projection)(marg: Option[Term]): Either[T1, Expression]
def encodeTerm[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(term: Term): Either[T1, Expression]
def encodeTermDefinition[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(tdef: TermDefinition): Either[T1, TopLevelFormWithComments]
def encodeTypeBody[T0](lname: String)(origTyp: Type)(typ: Type): Either[T0, TopLevelFormWithComments]
def encodeTypeDefinition[T0, T1, T2](cx: T0)(g: T1)(tdef: TypeDefinition): Either[T2, TopLevelFormWithComments]
def encodeUnionElim[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(cs: CaseStatement)(marg: Option[Term]): Either[T1, Expression]
def encodeUnwrapElim[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(cx: T0)(g: Graph)(name: Name)(marg: Option[Term]): Either[T1, Expression]
def moduleImports(dialect: Dialect)(overlaySubs: Set[String])(focusNs: ModuleName)(defs: Seq[Definition]): Seq[ImportDeclaration]
def moduleToLisp[T0, T1](dialect: Dialect)(overlaySubs: Set[String])(mod: Module)(defs0: Seq[Definition])(cx: T0)(g: Graph): Either[T1, Program]
Concrete fields
In this article