Packages

final class Transition extends MLValueWrapper[Transition]

Represents a transition between proof states (ML type Toplevel.transition) in the Isabelle process.

Use Transition.parseOuterSyntax to parse Isar source code into into a list of transitions.

An instance of this class is merely a thin wrapper around an MLValue.

Source
Transition.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Transition
  2. MLValueWrapper
  3. FutureValue
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. 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
    MLValueWrapperFutureValue
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def execute(state: ToplevelState, timeout: Duration = Duration.Inf, interactive: Boolean = false)(implicit isabelle: Isabelle): ToplevelState

    Execute the transition on a TopLevelState (ML function Toplevel.command_exception).

    Execute the transition on a TopLevelState (ML function Toplevel.command_exception).

    state

    The state on which to execute the transition.

    timeout

    Maximum duration (after which the execution is aborted with an IsabelleMLException). The minimum granularity should be 1 ms, but it seems the timeout gets rounded up to full seconds by ML. Timeouts smaller than 1ms are treated as 1ms (rather than infinite, as in ML Timeout.apply). Timeouts are scaled by the Isabelle timeout_scale system option, though the default is 1.

    interactive

    Whether the command is run interactively (as in jEdit) or in a batch (as in isabelle build).

  10. def force: Transition.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
  11. def forceFuture(implicit isabelle: Isabelle): Future[Transition.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.

    Roughly the same as Future { this.force }.

    Definition Classes
    FutureValue
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  14. def isIgnored(implicit isabelle: Isabelle): Boolean

    Returns whether the transition is just whitespace, comments, text (ML function Toplevel.is_ignored).

  15. def isInit(implicit isabelle: Isabelle): Boolean

    Returns whether this transition introduces a theory ("theory ..

    Returns whether this transition introduces a theory ("theory .. begin", ML function Toplevel.is_init).

    Init transitions can only be applied to toplevel states in theory mode.

  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. def isMalformed(implicit isabelle: Isabelle): Boolean

    Returns true if the transition is a parsing error (ML function Toplevel.is_malformed).

  18. val mlValue: MLValue[Transition]

    An MLValue referencing this (in the Isabelle process).

    An MLValue referencing this (in the Isabelle process). Since this is just a thin wrapper around an MLValue, mlValue carries exactly the same data as this and can be converted back and forth quickly (no transfer of data to/from the Isabelle process involved).

    Same as MLValue(this), assuming the correct MLValue.Converter from the companion object for A is imported.

    Definition Classes
    TransitionMLValueWrapper
  19. def name(implicit isabelle: Isabelle): String

    Returns the command name (ML function Toplevel.name_of).

    Returns the command name (ML function Toplevel.name_of).

    Examples: "theory", "section", "lemma", "by", "using", "definition", 'locale", "record", "end". The name is "<ignored>" if and only if isIgnored is true. The name is "<malformed>" if and only if isMalformed is true.

  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  23. def position(implicit isabelle: Isabelle): Position

    Returns the position of this transition's command name.

  24. 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
    MLValueWrapperFutureValue
  25. 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
  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  30. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from MLValueWrapper[Transition]

Inherited from FutureValue

Inherited from AnyRef

Inherited from Any

Ungrouped