Author: Manuel Jacob Branch: remove-dict-smm Changeset: r64099:3d3b181723ff Date: 2013-05-14 20:59 +0200 http://bitbucket.org/pypy/pypy/changeset/3d3b181723ff/
Log: Remove dict view repr multi-methods. diff --git a/pypy/objspace/std/dictmultiobject.py b/pypy/objspace/std/dictmultiobject.py --- a/pypy/objspace/std/dictmultiobject.py +++ b/pypy/objspace/std/dictmultiobject.py @@ -1245,6 +1245,12 @@ def __init__(w_self, space, w_dict): w_self.w_dict = w_dict + def descr_repr(self, space): + w_seq = space.call_function(space.w_list, self) + w_repr = space.repr(w_seq) + return space.wrap("%s(%s)" % (space.type(self).getname(space), + space.str_w(w_repr))) + def descr_len(self, space): return space.len(self.w_dict) @@ -1265,18 +1271,21 @@ W_DictViewItemsObject.typedef = StdTypeDef( "dict_items", + __repr__ = gateway.interp2app(W_DictViewItemsObject.descr_repr), __len__ = gateway.interp2app(W_DictViewItemsObject.descr_len), __iter__ = gateway.interp2app(W_DictViewItemsObject.descr_iter) ) W_DictViewKeysObject.typedef = StdTypeDef( "dict_keys", + __repr__ = gateway.interp2app(W_DictViewKeysObject.descr_repr), __len__ = gateway.interp2app(W_DictViewKeysObject.descr_len), __iter__ = gateway.interp2app(W_DictViewKeysObject.descr_iter) ) W_DictViewValuesObject.typedef = StdTypeDef( "dict_values", + __repr__ = gateway.interp2app(W_DictViewValuesObject.descr_repr), __len__ = gateway.interp2app(W_DictViewValuesObject.descr_len), __iter__ = gateway.interp2app(W_DictViewValuesObject.descr_iter) ) @@ -1308,14 +1317,6 @@ eq__DictViewItems_settypedef = eq__DictViewItems_DictViewItems eq__DictViewItems_frozensettypedef = eq__DictViewItems_DictViewItems -def repr__DictViewKeys(space, w_dictview): - w_seq = space.call_function(space.w_list, w_dictview) - w_repr = space.repr(w_seq) - return space.wrap("%s(%s)" % (space.type(w_dictview).getname(space), - space.str_w(w_repr))) -repr__DictViewItems = repr__DictViewKeys -repr__DictViewValues = repr__DictViewKeys - def and__DictViewKeys_DictViewKeys(space, w_dictview, w_otherview): w_set = space.call_function(space.w_set, w_dictview) space.call_method(w_set, "intersection_update", w_otherview) _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit