Packages

object Solver

auxiliary methods and high-level type reconstruction API

Source
Solver.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Solver
  2. AnyRef
  3. 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 breakAfter(id: Int): Unit
  6. def check(controller: Controller, stack: Stack, tm: Term, expectedType: Option[(Context, Term)] = None, rulesOpt: Option[RuleSet] = None): Union[(Term, Term), Solver]

    type reconstruction: checks a single term against a partially known type

    type reconstruction: checks a single term against a partially known type

    tm

    the term (as a ParseResult)

    expectedType

    the expected type and the unknowns that additionally occur in it; if omitted a fresh unknown is generated for the type

    rulesOpt

    the typing rules if known (to avoid computing them again)

    returns

    Left(term, type) if successful, Right(solver) otherwise; in the latter case, use e.g. solver.logState to print the typing errors

  7. var checkId: Int

    counter for debugging

  8. def checkType(controller: Controller, context: Context, tm: Term, tp: Term): Option[Solver]

    checks a term without unknowns against a type, returns the solver if not successful

  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. def findSolvableVariable[A <: SolutionRule](rules: Iterable[A], unknowns: Context, t: Term): Option[(List[A], LocalName)]

    tests a term for the occurrence of an unknown variables that can be isolated by applying solution rules

    tests a term for the occurrence of an unknown variables that can be isolated by applying solution rules

    rules

    the solution rules to test with

    unknowns

    the list of variables to try to isolate

    t

    the term in which to test

    returns

    a pair (rs, n) such that applying rs to t (head first) has a chance of isolating n

  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. def infer(controller: Controller, context: Context, tm: Term, rulesOpt: Option[RuleSet]): Option[Term]

    infers the type of a term that is known to be well-formed

  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def makeUnknown(name: LocalName, args: List[LocalName]): Term

    create an unknown whose solution may contain certain variables

  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. val propertyURI: URI

    base for client property keys

  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped