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 UniquePath[T]
class ListPath[T]
trait Predicate
object True
object False
class And
class Or
class Not
class Eql[T]
class NEql[T]
class Contains[T]
class Lt[T]
class LtEql[T]
class Gt[T]
class GtEql[T]
class In[T]
class Matches
class Const[T]
class AndB
class OrB
class XorB
class NotB

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
def productArity: Int
Inherited from
Product
def productElement(n: Int): Any
Inherited from
Product
def productElementName(n: Int): String
Inherited from
Product
def productElementNames: Iterator[String]
Inherited from
Product
def productIterator: Iterator[Any]
Inherited from
Product
def productPrefix: String
Inherited from
Product