final class TVar extends ConcreteTyp
A schematic type variable (ML constructor TVar
). name is the name of the type variable (e.g.,
"'a'"
) and sort its sort. (The sort is a list of fully qualified type class names.)
Schematic type variables are the ones that are represented with a leading question mark in
Isabelle's parsing and pretty printing. E.g., ?'a
is a TVar with name="'a"
and index=0
. And ?'b1
or ?'b.1
is a TVar with name="'b"
and index=1
.
Note that type variables whose names do not start with ' are not legal in Isabelle.
- Source
- Typ.scala
- Alphabetic
- By Inheritance
- TVar
- ConcreteTyp
- Typ
- FutureValue
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def -->:(that: Typ)(implicit ec: ExecutionContext): Type
t -->: u
is shorthand forType("fun", t, u)
, i.e., for a function fromt
tou
.t -->: u
is shorthand forType("fun", t, u)
, i.e., for a function fromt
tou
.- Definition Classes
- Typ
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def await: Unit
Blocks until this future value is computed.
Blocks until this future value is computed. (Or throws an exception if the computation fails.)
- Definition Classes
- TVar → FutureValue
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- val concrete: TVar.this.type
- returns
this
- Definition Classes
- ConcreteTyp → Typ
- def concreteComputed: Boolean
- returns
true
- Definition Classes
- ConcreteTyp → Typ
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(that: Any): Boolean
Equality of types.
Equality of types. Returns true iff the two Typ instances represent the same type in the Isabelle process. (E.g., a Ctyp and a TFree can be equal.) May throw an exception if the computation of the terms fails. (But will not fail if await or a related FutureValue method has returned successfully on both terms.)
- Definition Classes
- Typ → AnyRef → Any
- def force: TVar.this.type
Waits till the computation of this value (in the Isabelle process) has finished.
Waits till the computation of this value (in the Isabelle process) has finished. (Or until an exception is thrown.)
- returns
this value, but it is guaranteed to have completed the computation
- Definition Classes
- FutureValue
- def forceFuture(implicit ec: ExecutionContext): Future[TVar.this.type]
A future containing this object with the computation completed.
A future containing this object with the computation completed. In particular, if this value throws an exception upon computation, the future holds that exception.
- Definition Classes
- TVar → FutureValue
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
Hash code compatible with equals.
- val index: Int
- val initialMlValue: MLValue[Typ]
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- implicit val isabelle: Isabelle
Isabelle instance relative to which this type was constructed.
- lazy val mlValue: MLValue[Typ]
Transforms this type into an MLValue containing this type.
- val name: String
- 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()
- def pretty(ctxt: Context)(implicit ec: ExecutionContext): String
Produces a string representation of this type.
Produces a string representation of this type. Uses the Isabelle pretty printer.
- ctxt
The Isabelle proof context to use (this contains syntax declarations etc.)
- Definition Classes
- Typ
- def someFuture: Future[Any]
Returns a future that completes when the computation of this object is complete.
Returns a future that completes when the computation of this object is complete. (Or that holds an exception if that computation throws an exception.) However, upon successful completion, the future may return an arbitrary (and thus useless) value. May be faster to implement than forceFuture because there may be already a future available but that returns the wrong value.
- Definition Classes
- TVar → FutureValue
- val sort: List[String]
- def stateString: String
A utility method that returns "" if this value was successfully computed, " (computing)" if it still computes, and " (failed)" if it finished with an exception.
A utility method that returns "" if this value was successfully computed, " (computing)" if it still computes, and " (failed)" if it finished with an exception.
This can be useful to constructing human readable messages about this value.
- Definition Classes
- FutureValue
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString: String
Produces a string representation of this type.
Produces a string representation of this type.
This is not a "pretty" representation, it does not use Isabelle syntax, and subterms that are stored only in the Isabelle process are replaced with a placeholder (thus this method does not invoke any potentially communication with the Isabelle process).
- 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])