class Comparator(util.MemoizedSlots, PropComparator):
Produce boolean, comparison, and other operators for
.ColumnProperty
attributes.
See the documentation for .PropComparator
for a brief
overview.
Method | _fallback_getattr |
proxy attribute access down to the mapped column. |
Method | _memoized_attr_expressions |
The full sequence of columns referenced by this attribute, adjusted for any aliasing in progress. |
Method | _memoized_attr_info |
The .info dictionary for this attribute. |
Method | _memoized_method___clause_element__ |
Undocumented |
Method | _orm_annotate_column |
annotate and possibly adapt a column to be returned as the mapped-attribute exposed version of the column. |
Method | operate |
Operate on an argument. |
Method | reverse_operate |
Reverse operate on an argument. |
Class Variable | __slots__ |
Undocumented |
Inherited from MemoizedSlots
:
Method | __getattr__ |
Undocumented |
Inherited from PropComparator
:
Static Method | any_op |
Undocumented |
Static Method | has_op |
Undocumented |
Static Method | of_type_op |
Undocumented |
Method | __clause_element__ |
Undocumented |
Method | __init__ |
Undocumented |
Method | _bulk_update_tuples |
Receive a SQL expression that represents a value in the SET clause of an UPDATE statement. |
Method | adapt_to_entity |
Return a copy of this PropComparator which will use the given .AliasedInsp to produce corresponding expressions. |
Method | and_ |
Add additional criteria to the ON clause that's represented by this relationship attribute. |
Method | any |
Return true if this collection contains any member that meets the given criterion. |
Method | has |
Return true if this element references a member which meets the given criterion. |
Method | of_type |
Redefine this object in terms of a polymorphic subclass, _orm.with_polymorphic construct, or _orm.aliased construct. |
Class Variable | __visit_name__ |
Undocumented |
Instance Variable | _adapt_to_entity |
Undocumented |
Instance Variable | _parententity |
Undocumented |
Instance Variable | prop |
Undocumented |
Instance Variable | property |
Undocumented |
Property | _parentmapper |
legacy; this is renamed to _parententity to be compatible with QueryableAttribute. |
Property | _propagate_attrs |
Undocumented |
Property | adapter |
Produce a callable that adapts column expressions to suit an aliased version of this comparator. |
Property | info |
Undocumented |
Inherited from ColumnOperators
(via PropComparator
):
Method | __add__ |
Implement the + operator. |
Method | __contains__ |
Undocumented |
Method | __div__ |
Implement the / operator. |
Method | __eq__ |
Implement the == operator. |
Method | __ge__ |
Implement the >= operator. |
Method | __getitem__ |
Implement the [] operator. |
Method | __gt__ |
Implement the > operator. |
Method | __le__ |
Implement the <= operator. |
Method | __lshift__ |
implement the << operator. |
Method | __lt__ |
Implement the < operator. |
Method | __mod__ |
Implement the % operator. |
Method | __mul__ |
Implement the * operator. |
Method | __ne__ |
Implement the != operator. |
Method | __neg__ |
Implement the - operator. |
Method | __radd__ |
Implement the + operator in reverse. |
Method | __rdiv__ |
Implement the / operator in reverse. |
Method | __rmod__ |
Implement the % operator in reverse. |
Method | __rmul__ |
Implement the * operator in reverse. |
Method | __rshift__ |
implement the >> operator. |
Method | __rsub__ |
Implement the - operator in reverse. |
Method | __rtruediv__ |
Implement the // operator in reverse. |
Method | __sub__ |
Implement the - operator. |
Method | __truediv__ |
Implement the // operator. |
Method | all_ |
Produce an _expression.all_ clause against the parent object. |
Method | any_ |
Produce an _expression.any_ clause against the parent object. |
Method | asc |
Produce a _expression.asc clause against the parent object. |
Method | between |
Produce a _expression.between clause against the parent object, given the lower and upper range. |
Method | collate |
Produce a _expression.collate clause against the parent object, given the collation string. |
Method | concat |
Implement the 'concat' operator. |
Method | contains |
Implement the 'contains' operator. |
Method | desc |
Produce a _expression.desc clause against the parent object. |
Method | distinct |
Produce a _expression.distinct clause against the parent object. |
Method | endswith |
Implement the 'endswith' operator. |
Method | ilike |
Implement the ilike operator, e.g. case insensitive LIKE. |
Method | in_ |
Implement the in operator. |
Method | is_ |
Implement the IS operator. |
Method | is_distinct_from |
Implement the IS DISTINCT FROM operator. |
Method | is_not |
Implement the IS NOT operator. |
Method | is_not_distinct_from |
Implement the IS NOT DISTINCT FROM operator. |
Method | like |
Implement the like operator. |
Method | match |
Implements a database-specific 'match' operator. |
Method | not_ilike |
implement the NOT ILIKE operator. |
Method | not_in |
implement the NOT IN operator. |
Method | not_like |
implement the NOT LIKE operator. |
Method | nulls_first |
Produce a _expression.nulls_first clause against the parent object. |
Method | nulls_last |
Produce a _expression.nulls_last clause against the parent object. |
Method | regexp_match |
Implements a database-specific 'regexp match' operator. |
Method | regexp_replace |
Implements a database-specific 'regexp replace' operator. |
Method | startswith |
Implement the startswith operator. |
Class Variable | timetuple |
Hack, allows datetime objects to be compared on the LHS. |
Inherited from Operators
(via PropComparator
, ColumnOperators
):
Method | __and__ |
Implement the & operator. |
Method | __invert__ |
Implement the ~ operator. |
Method | __or__ |
Implement the | operator. |
Method | bool_op |
Return a custom boolean operator. |
Method | op |
Produce a generic operator function. |
proxy attribute access down to the mapped column.
this allows user-defined comparison methods to be accessed.
The full sequence of columns referenced by this attribute, adjusted for any aliasing in progress.
annotate and possibly adapt a column to be returned as the mapped-attribute exposed version of the column.
The column in this context needs to act as much like the column in an ORM mapped context as possible, so includes annotations to give hints to various ORM functions as to the source entity of this column. It also adapts it to the mapper's with_polymorphic selectable if one is present.
Operate on an argument.
This is the lowest level of operation, raises
NotImplementedError
by default.
Overriding this on a subclass can allow common
behavior to be applied to all operations.
For example, overriding .ColumnOperators
to apply func.lower() to the left and right
side:
class MyComparator(ColumnOperators): def operate(self, op, other): return op(func.lower(self), func.lower(other))
Parameters | |
op | Operator callable. |
*other | the 'other' side of the operation. Will be a single scalar for most operations. |
**kwargs | modifiers. These may be passed by special
operators such as ColumnOperators.contains . |
Reverse operate on an argument.
Usage is the same as operate
.