@classmethod
def register_transformation(cls, src, target, action=None):
    """Register a transformation from class src to class target using function action.

        :param src: source function
        :param target: target function
        :param action: transformation function
        """
    cls.transformations[target].append((src, action))
