Python equivt of __FILE__ and __LINE__
Gary Herron
gherron at islandtraining.com
Mon Feb 11 10:55:25 EST 2008
Bill Davy wrote:
> Writing a quick and dirty assembler and want to give the user the location
> of an error. The "assembly language" is Python. If the user wants to
> generat some object code they write something like:
>
> Label(LoopLable)
> Load(R4)
> Dec()
> JNZ(LoopLabel)
>
> I can use Python to do all the expression evalutaion, conversion from Python
> FP to target FP, include files, macros (done as function definitions). The
> functions like Load() generate the approproyte object code.
>
> So, for example, when a label is defined or referenced, I save the File,Line
> so if there is not exactly one defintion or no references, I can report the
> file location(s) to be considered. In the example, I would want to report
> that LoopLable is not referenced, and LoopLabel is not defined.
>
> TIA,
> Bill
>
> PS www.SynectixLtd.com is not relevant
>
>
>
You *can* get at that kind of information: The traceback module has a
function called "extract_stack" which can give you a pointer to the
whole execution stack. From that can be generated all the usual stuff
you see in a traceback -- including file and line information. *How*
you extract that stuff, I'll leave as an exercises for the reader.
(Meaning I haven't a clue.)
Gary Herron
More information about the Python-list
mailing list