Term

edu.gemini.grackle.Term
See theTerm companion object
trait Term[T] extends Product with Serializable

A reified function over a Cursor.

Query interpreters will typically need to introspect predicates (eg. in the doobie module we need to be able to construct where clauses from predicates over fields/attributes), so these cannot be arbitrary functions Cursor => Boolean.

Attributes

Companion:
object
Source:
predicate.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Known subtypes
class ListPath[A]
class UniquePath[A]
trait Predicate
class And
class Contains[T]
class Eql[T]
object False.type
class Gt[T]
class GtEql[T]
class In[T]
class IsNull[T]
class Lt[T]
class LtEql[T]
class Matches
class NEql[T]
class Not
class Or
object True.type
class AndB
class Const[T]
class NotB
class OrB
class XorB

Members list

Concise view

Value members

Abstract methods

def apply(c: Cursor): Result[T]

Attributes

Source:
predicate.scala
def children: List[Term[_]]

Attributes

Source:
predicate.scala

Concrete methods

def exists(f: Term[_] => Boolean): Boolean

Attributes

Source:
predicate.scala
def fold[Acc](acc: Acc)(f: (Acc, Term[_]) => Acc): Acc

Attributes

Source:
predicate.scala
def forall(f: Term[_] => Boolean): Boolean

Attributes

Source:
predicate.scala

Inherited methods

def canEqual(that: Any): Boolean

Attributes

Inherited from:
Equals

Attributes

Inherited from:
Product
def productElement(n: Int): Any

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product