Converts a query filter to a callable usable for filtering.
Method | __call__ |
Converts a query filter into a callable function. |
Method | __init__ |
Initializes this class. |
Method | _ |
Inner function for converting filters. |
Method | _ |
Handles binary operators. |
Method | _ |
Handles logic operators. |
Method | _ |
Handles unary operators. |
Method | _ |
Returns a field definition by name. |
Constant | _EQUALITY |
Known operators |
Constant | _LEVELS |
Undocumented |
Constant | _OPS |
Undocumented |
Class Variable | _OPTYPE |
Functions for equality checks depending on field flags. |
Class Variable | _OPTYPE |
Functions for equality checks depending on field flags. |
Class Variable | _OPTYPE |
Functions for equality checks depending on field flags. |
Instance Variable | _fields |
Undocumented |
Instance Variable | _hints |
Undocumented |
Instance Variable | _op |
Undocumented |
Converts a query filter into a callable function.
Parameters | |
hints:_FilterHints or None | Callbacks doing analysis on filter |
qfilter:list | Filter structure |
Returns | |
callable | Function receiving context and item as parameters, returning boolean as to whether item matches filter |
Inner function for converting filters.
Calls the correct handler functions for the top-level operator. This function is called recursively (e.g. for logic operators).
Handles binary operators.
Parameters | |
hints | Callback doing some analysis on the filter |
level:integer | Current depth |
op:string | Operator |
op | Functions implementing operators |
operands:list | List of operands |
Handles logic operators.
Parameters | |
hints | Callback doing some analysis on the filter |
level:integer | Current depth |
op:string | Operator |
op | Function implementing operator |
operands:list | List of operands |
Handles unary operators.
Parameters | |
hints | Callback doing some analysis on the filter |
level:integer | Current depth |
op:string | Operator |
op | Function implementing operator |
operands:list | List of operands |
Known operators
Operator as key (qlang.OP_*), value a tuple of operator group (_OPTYPE_*) and a group-specific value:
- _OPTYPE_LOGIC: Callable taking any number of arguments; used by
_HandleLogicOp
- _OPTYPE_UNARY: Always None; details handled by
_HandleUnaryOp
- _OPTYPE_BINARY: Callable taking exactly two parameters, the left- and right-hand side of the operator, used by
_HandleBinaryOp
Value |
|
Undocumented
Value |
|
Functions for equality checks depending on field flags.
List of tuples containing flags and a callable receiving the left- and right-hand side of the operator. The flags are an OR-ed value of QFF_* (e.g. QFF_HOSTNAME
or QFF_SPLIT_TIMESTAMP
).
Order matters. The first item with flags will be used. Flags are checked using binary AND.
Functions for equality checks depending on field flags.
List of tuples containing flags and a callable receiving the left- and right-hand side of the operator. The flags are an OR-ed value of QFF_* (e.g. QFF_HOSTNAME
or QFF_SPLIT_TIMESTAMP
).
Order matters. The first item with flags will be used. Flags are checked using binary AND.
Functions for equality checks depending on field flags.
List of tuples containing flags and a callable receiving the left- and right-hand side of the operator. The flags are an OR-ed value of QFF_* (e.g. QFF_HOSTNAME
or QFF_SPLIT_TIMESTAMP
).
Order matters. The first item with flags will be used. Flags are checked using binary AND.