Packages

object ELPI

implementation of the syntax of the ELPI system by Claudio Sacerdoti Coen and others

In concrete syntax, clauses are written with inverted implication and implicit quantification of upper case variables.

Upper-case variables are instantiable while lower-case ones are not. (In queries: existential; in assumptions: universal)

Source
Syntax.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ELPI
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class Accumulate(file: File) extends Decl with Product with Serializable
  2. abstract class Application extends Expr
  3. case class Apply(f: Expr, as: Expr*) extends Application with Product with Serializable
  4. case class BinOp(name: String) extends Product with Serializable

    built-in binary operators

  5. case class BinaryApply(operator: BinOp, left: Expr, right: Expr) extends Application with Product with Serializable

    special case for the application of binary operators

  6. abstract class Binder extends AnyRef

    built-in binders

  7. case class Bracket(bracket: Boolean) extends Product with Serializable

    helper class to optionally wrap brackets around a string

  8. case class Comment(s: String) extends Decl with Product with Serializable
  9. abstract class Constant extends Variable

    built-in constants

  10. abstract class Decl extends AnyRef

    toplevel declarations

  11. abstract class Expr extends AnyRef

    expressions (including rules as a special case)

  12. case class Lambda(name: LocalName, scope: Expr) extends Expr with Product with Serializable
  13. case class Program(decls: Decl*) extends Product with Serializable

    programs

  14. case class Rule(rule: Expr) extends Decl with Product with Serializable
  15. case class UnOp(name: String, prefix: Boolean) extends Product with Serializable

    built-in unary operators

  16. case class UnaryApply(operator: UnOp, arg: Expr) extends Application with Product with Serializable

    special case for the application of unary operators

  17. case class Variable(name: LocalName) extends Expr with Product with Serializable

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 clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  15. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  20. object And extends BinOp
  21. object Exists extends Binder
  22. object False extends Constant
  23. object Forall extends Binder
  24. object Impl extends BinOp
  25. object Is extends BinOp
  26. object Lambda extends Serializable
  27. object Not extends BinOp
  28. object Or extends BinOp
  29. object True extends Constant

Inherited from AnyRef

Inherited from Any

Ungrouped