summaryrefslogtreecommitdiff
path: root/python/helpers/pydev/pydev_override.py
blob: bb0c50438125a26828338b997963a16f73322ce9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
def overrides(method):
    '''
    Initially meant to be used as
    
    class B:
        @overrides(A.m1)
        def m1(self):
            pass
            
    but as we want to be compatible with Jython 2.1 where decorators have an uglier syntax (needing an assign
    after the method), it should now be used without being a decorator as below (in which case we don't even check
    for anything, just that the parent name was actually properly loaded).
    
    i.e.:
    
    class B:
        overrides(A.m1)
        def m1(self):
            pass
    '''
    return

#    def wrapper(func):
#        if func.__name__ != method.__name__:
#            msg = "Wrong @override: %r expected, but overwriting %r."
#            msg = msg % (func.__name__, method.__name__)
#            raise AssertionError(msg)
#
#        if func.__doc__ is None:
#            func.__doc__ = method.__doc__
#
#        return func
#
#    return wrapper

def implements(method):
    return
#    def wrapper(func):
#        if func.__name__ != method.__name__:
#            msg = "Wrong @implements: %r expected, but implementing %r."
#            msg = msg % (func.__name__, method.__name__)
#            raise AssertionError(msg)
#
#        if func.__doc__ is None:
#            func.__doc__ = method.__doc__
#
#        return func
#
#    return wrapper