[pypy-svn] r59500 - pypy/trunk/pypy/interpreter
arigo at codespeak.net
arigo at codespeak.net
Tue Oct 28 18:47:30 CET 2008
Author: arigo
Date: Tue Oct 28 18:47:30 2008
New Revision: 59500
Modified:
pypy/trunk/pypy/interpreter/typedef.py
Log:
Go over the list of built-in types in typedef.py
and mark 'acceptable_as_base_class = False' for most
of them, just following what CPython does.
This should reduce the size of the pypy-c a tiny bit.
Modified: pypy/trunk/pypy/interpreter/typedef.py
==============================================================================
--- pypy/trunk/pypy/interpreter/typedef.py (original)
+++ pypy/trunk/pypy/interpreter/typedef.py Tue Oct 28 18:47:30 2008
@@ -499,6 +499,7 @@
__objclass__ = GetSetProperty(GetSetProperty.descr_get_objclass),
__doc__ = interp_attrproperty('doc', cls=GetSetProperty),
)
+GetSetProperty.acceptable_as_base_class = False
class Member(Wrappable):
@@ -559,6 +560,7 @@
__name__ = interp_attrproperty('name', cls=Member),
__objclass__ = interp_attrproperty_w('w_cls', cls=Member),
)
+Member.acceptable_as_base_class = False
# ____________________________________________________________
#
@@ -649,12 +651,14 @@
co_flags = GetSetProperty(fget_co_flags, cls=Code),
co_consts = GetSetProperty(fget_co_consts, cls=Code),
)
+Code.acceptable_as_base_class = False
Frame.typedef = TypeDef('internal-frame',
f_code = GetSetProperty(Frame.fget_code),
f_locals = GetSetProperty(Frame.fget_getdictscope),
f_globals = interp_attrproperty_w('w_globals', cls=Frame),
)
+Frame.acceptable_as_base_class = False
PyCode.typedef = TypeDef('code',
__new__ = interp2app(PyCode.descr_code__new__.im_func),
@@ -679,6 +683,7 @@
co_firstlineno = interp_attrproperty('co_firstlineno', cls=PyCode),
co_lnotab = interp_attrproperty('co_lnotab', cls=PyCode),
)
+PyCode.acceptable_as_base_class = False
PyFrame.typedef = TypeDef('frame',
__reduce__ = interp2app(PyFrame.descr__reduce__,
@@ -696,6 +701,7 @@
f_exc_traceback = GetSetProperty(PyFrame.fget_f_exc_traceback),
f_restricted = GetSetProperty(PyFrame.fget_f_restricted),
**Frame.typedef.rawdict)
+PyFrame.acceptable_as_base_class = False
Module.typedef = TypeDef("module",
__new__ = interp2app(Module.descr_module__new__.im_func,
@@ -756,6 +762,7 @@
__module__ = getset___module__,
__weakref__ = make_weakref_descr(Function),
)
+Function.acceptable_as_base_class = False
Method.typedef = TypeDef("method",
__new__ = interp2app(Method.descr_method__new__.im_func),
@@ -774,6 +781,7 @@
unwrap_spec=['self', ObjSpace]),
__weakref__ = make_weakref_descr(Method),
)
+Method.acceptable_as_base_class = False
StaticMethod.typedef = TypeDef("staticmethod",
__doc__ = """staticmethod(function) -> static method
@@ -827,6 +835,7 @@
'__repr__': interp2app(BuiltinFunction.descr_function_repr),
})
del BuiltinFunction.typedef.rawdict['__get__']
+BuiltinFunction.acceptable_as_base_class = False
PyTraceback.typedef = TypeDef("traceback",
__reduce__ = interp2app(PyTraceback.descr__reduce__,
@@ -838,6 +847,7 @@
tb_lineno = interp_attrproperty('lineno', cls=PyTraceback),
tb_next = interp_attrproperty('next', cls=PyTraceback),
)
+PyTraceback.acceptable_as_base_class = False
GeneratorIterator.typedef = TypeDef("generator",
__reduce__ = interp2app(GeneratorIterator.descr__reduce__,
@@ -856,6 +866,7 @@
gi_frame = interp_attrproperty('frame', cls=GeneratorIterator),
__weakref__ = make_weakref_descr(GeneratorIterator),
)
+GeneratorIterator.acceptable_as_base_class = False
Cell.typedef = TypeDef("cell",
__eq__ = interp2app(Cell.descr__eq__,
@@ -867,6 +878,7 @@
__setstate__ = interp2app(Cell.descr__setstate__,
unwrap_spec=['self', ObjSpace, W_Root]),
)
+Cell.acceptable_as_base_class = False
Ellipsis.typedef = TypeDef("Ellipsis",
__repr__ = interp2app(Ellipsis.descr__repr__),
@@ -876,6 +888,7 @@
NotImplemented.typedef = TypeDef("NotImplemented",
__repr__ = interp2app(NotImplemented.descr__repr__),
)
+NotImplemented.acceptable_as_base_class = False
SuspendedUnroller.typedef = TypeDef("SuspendedUnroller")
SuspendedUnroller.acceptable_as_base_class = False
More information about the Pypy-commit
mailing list