Clause

io.github.kelvindev15.prolog.core.Struct.Clause
trait Clause extends Struct

A Prolog clause.

Attributes

Graph
Supertypes
trait Struct
trait Term
trait Visitable
class Object
trait Matchable
class Any
Show all
Known subtypes
trait Directive
trait Rule
trait Fact

Members list

Value members

Concrete methods

final override def asTerm: Term

Return this term. Inheritors should use possibly only Variables, Constantss and Structs.

Return this term. Inheritors should use possibly only Variables, Constantss and Structs.

Attributes

Definition Classes

Inherited methods

override def accept[T](visitor: TermVisitor[T]): T

Accepts a TermVisitor.

Accepts a TermVisitor.

Attributes

Definition Classes
Inherited from:
Struct
def foreach(action: Term => Unit): Unit

Executes an action over all arguments of the struct.

Executes an action over all arguments of the struct.

Value parameters

action

the action to be performed.

Attributes

Inherited from:
Struct
def instanceFrom(substitution: Substitution): Term

Returns the application of the substitution to this term.

Returns the application of the substitution to this term.

Value parameters

substitution

the substitution to apply.

Attributes

Inherited from:
Term
override def isGround: Boolean

Returns true if the term is ground

Returns true if the term is ground

Attributes

Definition Classes
Inherited from:
Struct
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Term -> Any
Inherited from:
Term
override def toTerm: Term

Attributes

Definition Classes
Inherited from:
Term
override def variables: Seq[Variable]

Returns the variables of the term.

Returns the variables of the term.

Attributes

Definition Classes
Inherited from:
Struct

Abstract fields

val body: Term

The body of the clause

The body of the clause

Attributes

val head: Option[Struct]

The head of the clause.

The head of the clause.

Attributes

Concrete fields

final override val functor: Atom

The functor of the predicate

The functor of the predicate

Attributes

Inherited and Abstract fields

val arguments: Seq[Term]

The arguments of the predicates

The arguments of the predicates

Attributes

Inherited from:
Struct
val arity: Int

The arity of the predicate

The arity of the predicate

Attributes

Inherited from:
Struct