Term

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.

trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
class ListPath[T]
class UniquePath[T]
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

Value members

Abstract methods

def apply(c: Cursor): Result[T]
def children: List[Term[_]]

Concrete methods

def exists(f: Term[_] => Boolean): Boolean
def fold[Acc](acc: Acc)(f: (Acc, Term[_]) => Acc): Acc
def forall(f: Term[_] => Boolean): Boolean

Inherited methods

def canEqual(that: Any): Boolean
Inherited from:
Equals
Inherited from:
Product
def productElement(n: Int): Any
Inherited from:
Product
Inherited from:
Product
Inherited from:
Product
Inherited from:
Product