1*16467b97STreehugger Robot2012-06-26 Benjamin S Wolf <[email protected]> 2*16467b97STreehugger Robot 3*16467b97STreehugger Robot Initial Python3 target, branched from the Python target by Benjamin 4*16467b97STreehugger Robot Niemann, with lots of code cleanup and minor refactoring. 5*16467b97STreehugger Robot 6*16467b97STreehugger Robot * CodeGenerator.java, Python3.stg: 7*16467b97STreehugger Robot Generated code now uses set notation for setTest, rather than long 8*16467b97STreehugger Robot conditionals like "a == FOO or a == BAR or 10 <= a <= 12". This is 9*16467b97STreehugger Robot a (slight) performance improvement. 10*16467b97STreehugger Robot 11*16467b97STreehugger Robot * tokens.py: 12*16467b97STreehugger Robot Token objects no longer have get/set methods for their attributes as I 13*16467b97STreehugger Robot switched them to use @property instead. The attributes should be accessed 14*16467b97STreehugger Robot directly. 15*16467b97STreehugger Robot 16*16467b97STreehugger Robot * tokens.py, Python3.stg: 17*16467b97STreehugger Robot Fix a circular dependency in generated parsers, and give Token objects the 18*16467b97STreehugger Robot ability to return their typeName when asked for it. (The generated 19*16467b97STreehugger Robot recognizer gives Token the mapping from token type to type name.) 20*16467b97STreehugger Robot 21*16467b97STreehugger Robot2007-11-03 Benjamin Niemann <[email protected]> 22*16467b97STreehugger Robot 23*16467b97STreehugger Robot * PythonTarget.java, dfa.py, exceptions.py, recognizer.py, streams.py: 24*16467b97STreehugger Robot ANTLRStringStream.LA() now returns the character's ordinal and 25*16467b97STreehugger Robot generated lexers operate on integers. Also made various performance 26*16467b97STreehugger Robot tunings. 27*16467b97STreehugger Robot 28*16467b97STreehugger Robot2007-10-07 Benjamin Niemann <[email protected]> 29*16467b97STreehugger Robot 30*16467b97STreehugger Robot * main.py, Python.stg (outputFile): Added simple __main__ section to 31*16467b97STreehugger Robot generated code, so (simple) grammars can be executed as standalone 32*16467b97STreehugger Robot script. 33*16467b97STreehugger Robot 34*16467b97STreehugger Robot * tree.py (RecognitionException.extractInformationFromTreeNodeStream), 35*16467b97STreehugger Robot exceptions.py (CommonTree): Small bugfixes. 36*16467b97STreehugger Robot 37*16467b97STreehugger Robot2007-09-30 Benjamin Niemann <[email protected]> 38*16467b97STreehugger Robot 39*16467b97STreehugger Robot * recognizers.py (TokenSource): Added iterator interface to TokenSource 40*16467b97STreehugger Robot class - and thus to Lexer. 41*16467b97STreehugger Robot 42*16467b97STreehugger Robot2007-06-27 Benjamin Niemann <[email protected]> 43*16467b97STreehugger Robot 44*16467b97STreehugger Robot * Python.stg (genericParser, parser, treeParser): Use correct @init 45*16467b97STreehugger Robot action block for tree parsers. 46*16467b97STreehugger Robot 47*16467b97STreehugger Robot2007-05-24 Benjamin Niemann <[email protected]> 48*16467b97STreehugger Robot 49*16467b97STreehugger Robot * Python.stg (rule): Added support for @decorate {...} action for 50*16467b97STreehugger Robot parser rules to add decorators to the rule method. 51*16467b97STreehugger Robot 52*16467b97STreehugger Robot2007-05-18 Benjamin Niemann <[email protected]> 53*16467b97STreehugger Robot 54*16467b97STreehugger Robot * Python.stg (isolatedLookaheadRangeTest, lookaheadRangeTest): 55*16467b97STreehugger Robot Minor improvement of generated code (use '<lower> <= <LA> <= <upper>' 56*16467b97STreehugger Robot instead of '<LA> >= <lower> and <LA> <= <upper>'). 57*16467b97STreehugger Robot 58*16467b97STreehugger Robot 59