case class Cons[C <: Term with Subs[C], H <: Term with Subs[H], Cod <: Term with Subs[Cod], RD <: Term with Subs[RD], ID <: Term with Subs[ID], TR <: Term with Subs[TR], TI <: Term with Subs[TI], TIntros <: HList](cons: C, pattern: ConstructorPatternMap[Cod, C, H, RD, ID], tail: ConstructorSeqMap[Cod, H, TR, TI, TIntros]) extends ConstructorSeqMap[Cod, H, Func[RD, TR], Func[ID, TI], ::[C, TIntros]] with Product with Serializable
prepending an introduction rule to ConstructorSeqMap
- cons
the introduction rule
- pattern
the mapped version of the introduction rule for the given codomain
- tail
the tail ConstructorSeqMap
- Alphabetic
- By Inheritance
- Cons
- Serializable
- Product
- Equals
- ConstructorSeqMap
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Cons(cons: C, pattern: ConstructorPatternMap[Cod, C, H, RD, ID], tail: ConstructorSeqMap[Cod, H, TR, TI, TIntros])
- cons
the introduction rule
- pattern
the mapped version of the introduction rule for the given codomain
- tail
the tail ConstructorSeqMap
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (Cons[C, H, Cod, RD, ID, TR, TI, TIntros], B)
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val W: Typ[H]
the inductive type being defined
the inductive type being defined
- Definition Classes
- Cons → ConstructorSeqMap
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- val cons: C
- def data(X: Typ[Cod]): RD
- def dataCons(X: Typ[Cod]): DataCons[H, Cod, RD]
- val defn: (RD) => (Func[H, Cod]) => (H) => Option[Cod]
- def ensuring(cond: (Cons[C, H, Cod, RD, ID, TR, TI, TIntros]) => Boolean, msg: => Any): Cons[C, H, Cod, RD, ID, TR, TI, TIntros]
- def ensuring(cond: (Cons[C, H, Cod, RD, ID, TR, TI, TIntros]) => Boolean): Cons[C, H, Cod, RD, ID, TR, TI, TIntros]
- def ensuring(cond: Boolean, msg: => Any): Cons[C, H, Cod, RD, ID, TR, TI, TIntros]
- def ensuring(cond: Boolean): Cons[C, H, Cod, RD, ID, TR, TI, TIntros]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def formatted(fmtstr: String): String
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def indDataCons(fibre: Func[H, Typ[Cod]]): DataCons[H, Cod, ID]
- def induc(fibre: Func[H, Typ[Cod]]): Func[ID, TI]
inductive definition function
ind_W, Xs
inductive definition function
ind_W, Xs
- Definition Classes
- ConstructorSeqMap
- def inducData(fibre: Func[H, Typ[Cod]]): ID with Subs[ID]
- def inducDataLambda(fibre: Func[H, Typ[Cod]]): (FuncLike[H, Cod]) => Func[ID with Subs[ID], TI]
converts an inductive definition built by InductiveDefinition to a lambda
converts an inductive definition built by InductiveDefinition to a lambda
- Definition Classes
- Cons → ConstructorSeqMap
- def inducDefn(fibre: Func[H, Typ[Cod]]): DataCons[H, Cod, ID]
- Definition Classes
- Cons → ConstructorSeqMap
- val inducDefn: (ID) => (FuncLike[H, Cod]) => (H) => Option[Cod]
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- val pattern: ConstructorPatternMap[Cod, C, H, RD, ID]
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def rec(X: Typ[Cod]): Func[RD, TR]
the recursion function
rec_W,X
the recursion function
rec_W,X
- Definition Classes
- ConstructorSeqMap
- def recDataLambda(X: Typ[Cod]): (Func[H, Cod]) => Func[RD, TR]
converts a recursive definition built by RecursiveDefinition to a lambda
converts a recursive definition built by RecursiveDefinition to a lambda
- Definition Classes
- Cons → ConstructorSeqMap
- def recDefn(X: Typ[Cod]): DataCons[H, Cod, RD]
recursive definition function
rec_W, X
in raw formrecursive definition function
rec_W, X
in raw form- Definition Classes
- Cons → ConstructorSeqMap
- def subs(x: Term, y: Term): Cons[C with Subs[C], H, Cod, RD, ID, TR, TI, TIntros]
- Definition Classes
- Cons → ConstructorSeqMap
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val tail: ConstructorSeqMap[Cod, H, TR, TI, TIntros]
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- def →[B](y: B): (Cons[C, H, Cod, RD, ID, TR, TI, TIntros], B)
- Implicit
- This member is added by an implicit conversion from Cons[C, H, Cod, RD, ID, TR, TI, TIntros] toArrowAssoc[Cons[C, H, Cod, RD, ID, TR, TI, TIntros]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
(Since version 2.13.0) Use
->
instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.