[pypy-svn] r28252 - pypy/dist/pypy/tool
antocuni at codespeak.net
antocuni at codespeak.net
Sun Jun 4 14:50:17 CEST 2006
Author: antocuni
Date: Sun Jun 4 14:50:16 2006
New Revision: 28252
Modified:
pypy/dist/pypy/tool/staticmethods.py
Log:
(antocuni, nik)
Forgotten from the last checkin.
Modified: pypy/dist/pypy/tool/staticmethods.py
==============================================================================
--- pypy/dist/pypy/tool/staticmethods.py (original)
+++ pypy/dist/pypy/tool/staticmethods.py Sun Jun 4 14:50:16 2006
@@ -1,10 +1,20 @@
import types
-class StaticMethods(type):
- """
- Metaclass that turns plain methods into staticmethods.
- """
+class AbstractMethods(type):
def __new__(cls, cls_name, bases, cls_dict):
for key, value in cls_dict.iteritems():
if isinstance(value, types.FunctionType):
- cls_dict[key] = staticmethod(value)
+ cls_dict[key] = cls.decorator(value)
return type.__new__(cls, cls_name, bases, cls_dict)
+
+
+class StaticMethods(AbstractMethods):
+ """
+ Metaclass that turns plain methods into staticmethods.
+ """
+ decorator = staticmethod
+
+class ClassMethods(AbstractMethods):
+ """
+ Metaclass that turns plain methods into classmethods.
+ """
+ decorator = classmethod
More information about the Pypy-commit
mailing list