We auto-generate the code via Python script files.   The source code for the 
generation ships w/ IronPython and is in Src\Scripts\generate.py and individual 
scripts (generate_*.py).  If you're looking for the code that handles a 
specific block you can grep/findstr for that block's region name minus the 
"Generated" part that's automatically included at the beginning.

Some of the scripts merely auto-generate based upon a pre-set table of one form 
or another (most of them). Other scripts reflect into the current running 
Python interpreter and generate based upon what they see there (e.g. 
exceptions). Finally some use Reflection to look at the types in the currently 
running interpreter and generate code based upon that (e.g. walker).  Using 
IronPython to generate these lets us use the most appropriate one at the time 
(although it makes things difficult if you've broken the interpreter so badly 
the scripts don't run anymore J).

Finally the scripts support checking the current source code and validating 
that there are no inconsistencies between what's on disk and what will be 
output.  You can run any generate_*.py w/ a "checkonly" option on the command 
line and it will return 0 if all generated files match.

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of kak kak
Sent: Monday, February 12, 2007 7:18 AM
To: [email protected]
Subject: [IronPython] Generated Code in the Iron Python Source

Hia,

I've recently started to peek around in the source code for IronPython and 
couldn't help but notice that some of the source code in the parser has 
comments about being autogenerated (i.e the Tokenizer class)

I assume you have been using a tool similar to ANTLR, I'm just curious about 
the what tools you have been using to autogenerate this code and are they 
publicly available?

BR
Martin
_______________________________________________
users mailing list
[email protected]
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com

Reply via email to