case class DepFuncPtn[U <: Term with Subs[U], V <: Term with Subs[V], VV <: Term with Subs[VV], C <: Term with Subs[C], F <: Term with Subs[F], H <: Term with Subs[H]](tail: IterFuncPtn[H, C, F], headfibre: (F) => ConstructorPattern[C, U, H] { ... /* 2 definitions in type refinement */ }, headlevel: Int = 0) extends RecursiveConstructorPattern[C, F, U, FuncLike[F, U], H] with Product with Serializable
Dependent extension of a poly-pattern by a type pattern. XXX this may never be applicable
- Self Type
- DepFuncPtn[U, V, VV, C, F, H]
- Alphabetic
- By Inheritance
- DepFuncPtn
- Serializable
- Product
- Equals
- RecursiveConstructorPattern
- ConstructorPattern
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new DepFuncPtn(tail: IterFuncPtn[H, C, F], headfibre: (F) => ConstructorPattern[C, U, H] { ... /* 2 definitions in type refinement */ }, headlevel: Int = 0)
Type Members
- type ArgType = F
scala type of argument to constructor A -> ...
scala type of argument to constructor A -> ... (or A ~> ...)
- Definition Classes
- RecursiveConstructorPattern
- type ConstructorType = FuncLike[F, U]
- Definition Classes
- ConstructorPattern
- type DomainType = H
- Definition Classes
- ConstructorPattern
- type HeadInducDataType = VV
- Definition Classes
- DepFuncPtn → RecursiveConstructorPattern
- type HeadRecDataType = V
(scala) type of recursive data for head.
(scala) type of recursive data for head.
- Definition Classes
- DepFuncPtn → RecursiveConstructorPattern
- type HeadType = U
scala type of the head T for constructor A -> T for Pi-Types, the head may have varying HoTT type but must have fixed scala type.
scala type of the head T for constructor A -> T for Pi-Types, the head may have varying HoTT type but must have fixed scala type.
- Definition Classes
- RecursiveConstructorPattern
- type InducDataType = FuncLike[Family, Func[DepTargetType, VV]]
(scala) type of data for recursion corresponding to the single constructor
(scala) type of data for recursion corresponding to the single constructor
- Definition Classes
- DepFuncPtn → ConstructorPattern
- type RecDataType = FuncLike[Family, Func[TargetType, V]]
(scala) type of data for recursion corresponding to the single constructor
(scala) type of data for recursion corresponding to the single constructor
- Definition Classes
- DepFuncPtn → ConstructorPattern
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toany2stringadd[DepFuncPtn[U, V, VV, C, F, H]] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def -->:(that: IdW[_]): FuncPtn[C, H, FuncLike[F, U], H]
- Definition Classes
- ConstructorPattern
- def -->:[F <: Term with Subs[F]](that: IterFuncPtn[H, C, F]): FuncPtn[C, F, FuncLike[F, U], H]
function pattern.
function pattern.
- Definition Classes
- ConstructorPattern
- def ->[B](y: B): (DepFuncPtn[U, V, VV, C, F, H], B)
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toArrowAssoc[DepFuncPtn[U, V, VV, C, F, H]] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- def ->:[T <: Term with Subs[T]](tail: Typ[T]): CnstFncPtn[T, C, FuncLike[F, U], H]
- Definition Classes
- ConstructorPattern
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def apply(W: Typ[H]): Typ[FuncLike[ArgType, U]]
returns HoTT type corresponding to the pattern given the (inductive) type W (to be the head).
returns HoTT type corresponding to the pattern given the (inductive) type W (to be the head).
- Definition Classes
- DepFuncPtn → ConstructorPattern
- 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()
- def cons(tp: => Typ[H]): Constructor.ConstructorType
- Definition Classes
- ConstructorPattern
- def cons(tp: => Typ[H], name: AnySym): FuncLike[F, U]
- Definition Classes
- ConstructorPattern
- def constructor(tp: => Typ[H], name: AnySym): ConstructorDefn[ConstructorType, C, H]
constructor for this pattern given inductive type and name.
constructor for this pattern given inductive type and name.
- Definition Classes
- ConstructorPattern
- def ensuring(cond: (DepFuncPtn[U, V, VV, C, F, H]) => Boolean, msg: => Any): DepFuncPtn[U, V, VV, C, F, H]
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toEnsuring[DepFuncPtn[U, V, VV, C, F, H]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (DepFuncPtn[U, V, VV, C, F, H]) => Boolean): DepFuncPtn[U, V, VV, C, F, H]
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toEnsuring[DepFuncPtn[U, V, VV, C, F, H]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): DepFuncPtn[U, V, VV, C, F, H]
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toEnsuring[DepFuncPtn[U, V, VV, C, F, H]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): DepFuncPtn[U, V, VV, C, F, H]
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toEnsuring[DepFuncPtn[U, V, VV, C, F, H]] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toStringFormat[DepFuncPtn[U, V, VV, C, F, H]] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def headData(data: RecDataType, arg: ArgType, f: => Func[H, C]): HeadRecDataType
returns data for recursion to be passed on to the head given an argument (when matching with the constructor).
returns data for recursion to be passed on to the head given an argument (when matching with the constructor).
- Definition Classes
- DepFuncPtn → RecursiveConstructorPattern
- def headInducData(data: InducDataType, arg: ArgType, f: => FuncLike[H, C]): HeadInducDataType
- Definition Classes
- DepFuncPtn → RecursiveConstructorPattern
- val headfibre: (F) => ConstructorPattern[C, U, H] { ... /* 2 definitions in type refinement */ }
The head pattern, constant T for A -> T and T(a) for A ~> T(a)
The head pattern, constant T for A -> T and T(a) for A ~> T(a)
- Definition Classes
- DepFuncPtn → RecursiveConstructorPattern
- val headlevel: Int
- def inducDataTyp(w: Typ[H], xs: Func[H, Typ[C]])(cons: ConstructorType): Typ[InducDataType]
domain containing the induction data for the constructor, i.e., the HoTT type of the induction data.
domain containing the induction data for the constructor, i.e., the HoTT type of the induction data.
- Definition Classes
- DepFuncPtn → ConstructorPattern
- def inducDefCase(cons: ConstructorType, data: InducDataType, f: => FuncLike[H, C]): (H) => Option[C]
given a term, matches to see if this is the image of a given (quasi)-constructor, with
this
constructor pattern.given a term, matches to see if this is the image of a given (quasi)-constructor, with
this
constructor pattern. optionally returns simplification (if the term matches).- cons
constructor, actually quasi-constructor, with which to match.
- data
definition data for the image of the constructor.
- f
the function being defined inductively, to be used recursively in definition.
- Definition Classes
- RecursiveConstructorPattern → ConstructorPattern
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newconstructor(tp: Typ[H]): Constructor[C, H]
constructor for this pattern given inductive type, with a name symbol generated.
constructor for this pattern given inductive type, with a name symbol generated.
- Definition Classes
- ConstructorPattern
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def recDataTyp(w: Typ[H], x: Typ[C]): PiDefn[Family, Func[TargetType, V]]
domain containing the recursion data for the constructor, i.e., the HoTT type of recursion data.
domain containing the recursion data for the constructor, i.e., the HoTT type of recursion data.
- Definition Classes
- DepFuncPtn → ConstructorPattern
- def recDefCase(cons: ConstructorType, data: RecDataType, f: => Func[H, C]): (H) => Option[C]
given a term, matches to see if this is the image of a given (quasi)-constructor, with
this
constructor pattern.given a term, matches to see if this is the image of a given (quasi)-constructor, with
this
constructor pattern. optionally returns simplification (if the term matches), determined by the recursion data.- cons
constructor, actually quasi-constructor, with which to match.
- data
definition data for the image of the constructor.
- f
the function being defined recursively, to be used recursively in definition.
- Definition Classes
- RecursiveConstructorPattern → ConstructorPattern
- def subs(x: Term, y: Term): DepFuncPtn[U, (<refinement>.this)#RecDataType, (<refinement>.this)#InducDataType, C, Family, H]
- Definition Classes
- DepFuncPtn → ConstructorPattern
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val tail: IterFuncPtn[H, C, F]
- val univLevel: Int
- Definition Classes
- DepFuncPtn → ConstructorPattern
- 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])
- def withCod[CC <: Term with Subs[CC]](w: Typ[H]): DepFuncPtn[U, (<refinement>.this)#RecDataType, (<refinement>.this)#InducDataType, CC, Family, H]
changes codomain and propagates changes to other types.
changes codomain and propagates changes to other types.
- Definition Classes
- DepFuncPtn → ConstructorPattern
- def ~>:[T <: Term with Subs[T]](tailVar: T): CnstDepFuncPtn[T, (<refinement>.this)#RecDataType, (<refinement>.this)#InducDataType, C, FuncLike[F, U], H]
- Definition Classes
- ConstructorPattern
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- def →[B](y: B): (DepFuncPtn[U, V, VV, C, F, H], B)
- Implicit
- This member is added by an implicit conversion from DepFuncPtn[U, V, VV, C, F, H] toArrowAssoc[DepFuncPtn[U, V, VV, C, F, H]] 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.