Source code for nti.zope_catalog.mixin

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Mixin base classes.
"""

from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

__docformat__ = "restructuredtext en"


[docs]class AbstractNormalizerMixin(object): """ Base class for normalizing values. All methods are directed to :meth:`value` by default; for more specific behaviour, override the corresponding method. """ def any(self, value, index): return (self.value(value),) def all(self, value, index): return self.value(value) def minimum(self, value, index, exclude=False): return self.value(value) def maximum(self, value, index, exclude=False): return self.value(value)
[docs] def value(self, value): """Normalize the given value for an arbitrary query.""" raise NotImplementedError()