示例#1
0
    def encode(self, model, data, **kwargs):
        # Retrieve item minimize protocol
        protocol = model.__protocols__.get('minimize') if model.__protocols__ else None

        if protocol is None:
            raise ValueError('Model %r has no "minimize" protocol defined' % model)

        if inspect.isfunction(protocol):
            protocol = protocol()

        return Minimize.encode(data, protocol)