aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/cython/Cython/Debugging.py
blob: c710552ceee0af909e42c14d4d3c695080bb1750 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
############################################### 
# 
#   Odds and ends for debugging 
# 
############################################### 
 
def print_call_chain(*args): 
    import sys 
    print(" ".join(map(str, args))) 
    f = sys._getframe(1) 
    while f: 
        name = f.f_code.co_name 
        s = f.f_locals.get('self', None) 
        if s: 
            c = getattr(s, "__class__", None) 
            if c: 
                name = "%s.%s" % (c.__name__, name) 
        print("Called from: %s %s" % (name, f.f_lineno)) 
        f = f.f_back 
    print("-" * 70)