@staticmethod
    def _op(op_name, lhs, rhs=None):
        """
        Implements a unary and binary operators.
        NB: lhs must always be an MDFNode.
        """
        try:
            binop = lhs._additional_attrs_[op_name]
        except __HOLE__:
            raise AttributeError
        return binop.__get__(lhs)(rhs)
dataset/ETHPy150Open manahl/mdf/mdf/nodes.py/MDFNode._op