pandagg.utils module

class pandagg.utils.DSLMixin[source]

Bases: object

Base class for all DSL objects - queries, filters, aggregations etc. Wraps a dictionary representing the object’s json.

classmethod get_dsl_class(name: str) → pandagg.utils.DslMeta[source]
static get_dsl_type(name: str) → pandagg.utils.DslMeta[source]
class pandagg.utils.DslMeta(name: str, bases: Tuple, attrs: Dict[KT, VT])[source]

Bases: type

Base Metaclass for DslBase subclasses that builds a registry of all classes for given DslBase subclass (== all the query types for the Query subclass of DslBase).

Types will be: ‘agg’, ‘query’, ‘field’

Each of those types will hold a _classes dictionary pointing to all classes of same type.

KEY = ''
pandagg.utils.equal_queries(d1: Any, d2: Any) → bool[source]

Compares if two queries are equivalent (do not consider nested list orders).

pandagg.utils.get_action_modifier(index_name: str, _op_type_overwrite: Optional[typing_extensions.Literal['create', 'index', 'update', 'delete'][create, index, update, delete]] = None) → Callable[source]
pandagg.utils.is_subset(subset: Any, superset: Any) → bool[source]
pandagg.utils.ordered(obj: Any) → Any[source]