Term

object Term
Companion:
class
trait Product
trait Mirror
class Object
trait Matchable
class Any
Term.type

Type members

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Inherited from:
Mirror

Value members

Concrete methods

def property(parent: Ast, name: String, termType: TermType): Property
def toAst(node: Term, parent: Ast): List[(Ast, String)]
def toAstTop(node: Term): List[(Ast, String)]

Top-Level expansion of a Term is slighly different the later levels. A the top it's always ident.map(id => ...) if Ident is an option as opposed to OptionMap which it would be, in lower layers.

Top-Level expansion of a Term is slighly different the later levels. A the top it's always ident.map(id => ...) if Ident is an option as opposed to OptionMap which it would be, in lower layers.

Legend: T(x, [y,z]) := Term(x=name, children=List(y,z)), T-Opt=OptionalTerm I.e. term where optional=true P(a, b) := Property(a, b) i.e. a.b M(a, v, P(v, b)) := Map(a, v, P(v, b)) or m.map(v => P(v, b))