1
0
forked from VimPlug/jedi

python 3 full compatibility

This commit is contained in:
David Halter
2012-07-13 02:10:55 +02:00
parent 24577bc632
commit 354838bb86
2 changed files with 4 additions and 1 deletions

51
mixin/builtins.py Normal file
View File

@@ -0,0 +1,51 @@
def next(iterator, default=None):
if hasattr("next"):
return iterator.next()
else:
return iterator.__next__()
return default
class property():
def __init__(self, fget, fset = None, fdel = None, doc = None):
self.fget = fget
self.fset = fset
self.fdel = fdel
self.__doc__ = doc
def __get__(self, obj, cls):
return self.fget(obj)
def __set__(self, obj, value):
self.fset(obj, value)
def __delete__(self, obj):
self.fdel(obj)
def setter(self, func):
self.fset = func
return self
def getter(self, func):
self.fget = func
return self
def deleter(self, func):
self.fdel = func
return self
class staticmethod():
def __init__(self, func):
self.func = func
def __get__(self, obj, cls):
return self.func
class classmethod():
def __init__(self, func):
self._func = func
def __get__(self, obj, cls):
def _method(*args, **kwargs):
self._func(cls, *args, **kwargs)
return _method