diff --git a/Lib/codehack.py b/Lib/codehack.py index 8a4f611696d..d00d2bfec9c 100644 --- a/Lib/codehack.py +++ b/Lib/codehack.py @@ -52,3 +52,12 @@ def getcodename(co): def getfuncname(func): return getcodename(func.func_code) + +# A part of the above code to extract just the line number from a code object. + +def getlineno(co): + code = co.co_code + if ord(code[0]) == SET_LINENO: + return ord(code[1]) | ord(code[2]) << 8 + else: + return -1 diff --git a/Lib/lib-old/codehack.py b/Lib/lib-old/codehack.py index 8a4f611696d..d00d2bfec9c 100644 --- a/Lib/lib-old/codehack.py +++ b/Lib/lib-old/codehack.py @@ -52,3 +52,12 @@ def getcodename(co): def getfuncname(func): return getcodename(func.func_code) + +# A part of the above code to extract just the line number from a code object. + +def getlineno(co): + code = co.co_code + if ord(code[0]) == SET_LINENO: + return ord(code[1]) | ord(code[2]) << 8 + else: + return -1