Sam Harwell
|
5e9b869f1d
|
Updated lexer to support encoding commands in the ATN and interpreting them with LexerInterpreter
|
2014-01-14 20:17:37 -06:00 |
Terence Parr
|
d4275ab53a
|
Range check; apparently string literal map not set when we create interp vs code gen.
|
2014-01-14 19:26:39 -06:00 |
Terence Parr
|
bc4f3a72aa
|
add helper methods and rename some internal Tool methods
|
2014-01-14 19:26:32 -06:00 |
Sam Harwell
|
967e74aa0d
|
Pass the ATN through the ATNSerializer prior to creating an interpreter (fixes #403)
|
2014-01-13 20:17:04 -06:00 |
Sam Harwell
|
266f7276d1
|
Initial implementation of a "precedence DFA" (fixes #400)
|
2014-01-09 18:11:17 -06:00 |
Sam Harwell
|
bf22a0af5b
|
Add regression test for #398
|
2014-01-09 06:51:49 -06:00 |
Terence Parr
|
6b2817f8bb
|
get last not first when get() finds multiple matching nodes.
|
2013-12-20 12:47:19 -08:00 |
Terence Parr
|
8c5d088eb7
|
Merge pull request #378 from sharwell/polish
Tree patterns polish
|
2013-12-19 17:24:42 -08:00 |
Sam Harwell
|
fb1880d82c
|
Move ATNSerializer to runtime
|
2013-12-19 19:07:24 -06:00 |
Sam Harwell
|
bc59f30857
|
Use ATNDeserializer methods instead of deprecated ATNSimulator methods
|
2013-12-19 19:07:23 -06:00 |
Sam Harwell
|
2a9a716c53
|
Remove unnecessary methods ParseTreeMatch.getText() and failed() (use getTree().getText() and !succeeded() instead)
|
2013-12-19 19:06:22 -06:00 |
Sam Harwell
|
72675075cf
|
Remove unnecessary testing constructor
|
2013-12-19 19:06:21 -06:00 |
Sam Harwell
|
75b8174dc8
|
Clean up the result caching for getTokenTypeMap and getRuleIndexMap
|
2013-12-19 19:06:20 -06:00 |
Sam Harwell
|
df61690758
|
Clean up the caching of ATN instances with bypass alternatives
|
2013-12-19 19:06:19 -06:00 |
Terence Parr
|
9ca6bf9bd3
|
fix null pointer bug with rule "a : a;"
|
2013-12-19 16:35:37 -08:00 |
Terence Parr
|
bd91dc166d
|
add getTokenTypeMap(), getRuleIndexMap() to recognizer. Gen new fields for that an ATN with bypass alts. Then methods for that: getATNWithBypassAlts(). Big changes to interface for ParseTreeMatch; create Parser.compileParseTreePattern() method. Convert rule names to rule indexes.
|
2013-11-24 14:04:46 -08:00 |
Terence Parr
|
4c52a103e1
|
cleanup
|
2013-11-22 11:31:59 -08:00 |
Terence Parr
|
b2ec85d14d
|
updated comments, cleaned up the API, made helper routines.
|
2013-11-22 11:08:16 -08:00 |
Terence Parr
|
168bce79d3
|
working on api
|
2013-11-22 09:55:40 -08:00 |
Terence Parr
|
4fdd520c2e
|
got labels working
|
2013-11-21 16:01:02 -08:00 |
Terence Parr
|
1e83557819
|
reorg to pass round a match object in matches_()
|
2013-11-21 10:30:37 -08:00 |
Terence Parr
|
e836544d30
|
add test for hidden tokens
|
2013-11-21 09:55:26 -08:00 |
Terence Parr
|
e68757717f
|
pass a lexer and a parser to the tree pattern match or instead of the classes.
|
2013-11-21 09:32:45 -08:00 |
Terence Parr
|
33d11709df
|
Revert "fix comment"
This reverts commit e8f577e162 .
|
2013-11-21 08:42:28 -08:00 |
Terence Parr
|
e8f577e162
|
fix comment
|
2013-11-21 08:42:02 -08:00 |
Terence Parr
|
40789babf5
|
got tree pattern matching working on my test cases using a parser interpreter not been generated parser to compile patterns like "<ID> = <expr>;". It uses Sam's alteration to the ATN to have bypass alternatives for <expr> tags.
|
2013-11-20 17:54:57 -08:00 |
Terence Parr
|
2394b38995
|
added state to be consistent with enterRule(); most importantly, we need to set the state when we enter a recursive rule, which we are not doing at the moment. This was not a problem before because we never could directly call a recursive rule and the outer rule set the current state. Now that we are using recursive rules as start rules, we need to set the state.
|
2013-11-20 17:53:51 -08:00 |
Terence Parr
|
2791dd5619
|
Merge branch 'master' into tree-patterns
|
2013-11-20 16:57:16 -08:00 |
Terence Parr
|
8c57233db7
|
mv to runtime. damn git!
|
2013-11-20 16:53:49 -08:00 |
Terence Parr
|
1c71d05074
|
Merge branch 'master' into tree-patterns
|
2013-11-20 16:49:27 -08:00 |
Terence Parr
|
cc07f8faec
|
mv to runtime. was ref'ing v3 not v4 Token.
|
2013-11-20 16:47:17 -08:00 |
Terence Parr
|
578dcd0799
|
reformat
|
2013-11-20 16:36:34 -08:00 |
Terence Parr
|
c7e9a410e9
|
rm unused field _contextStack
|
2013-11-20 16:35:55 -08:00 |
Terence Parr
|
48ce1f1809
|
Support getting the serialized ATN from a recognizer
|
2013-11-20 16:22:01 -08:00 |
Terence Parr
|
d09510a936
|
Merge branch 'master' into tree-patterns
|
2013-11-20 16:09:36 -08:00 |
Terence Parr
|
41d9d5bfd4
|
Merge pull request #357 from sharwell/atn-deserializer
ATN deserializer
|
2013-11-20 14:33:07 -08:00 |
Terence Parr
|
42e5343287
|
Merge branch 'master' into tree-patterns
|
2013-11-20 14:31:08 -08:00 |
Terence Parr
|
5a6709aba6
|
update changes file, tweak parser interp test to use new api
|
2013-11-20 14:28:51 -08:00 |
Terence Parr
|
02f937b115
|
Merge branch 'master' into tree-patterns
|
2013-11-20 14:20:09 -08:00 |
Sam Harwell
|
b447256f20
|
Extract ATN deserialization to a new class ATNDeserializer
|
2013-11-20 09:14:18 -06:00 |
Sam Harwell
|
6eb8111756
|
Generate method stub so external calls directly to LR rules do not require the precedence argument
|
2013-11-15 16:15:34 -06:00 |
Terence Parr
|
8cace4e182
|
pull master BaseTest
|
2013-11-14 14:47:49 -08:00 |
Terence Parr
|
2f902da3d2
|
pull master into branch
|
2013-11-14 14:43:50 -08:00 |
Sam Harwell
|
3309c9d85e
|
Fix build warnings
|
2013-11-14 15:36:01 -06:00 |
Terence Parr
|
52981a1d97
|
Merge pull request #353 from sharwell/parser-interpreter
Parser interpreter
|
2013-11-14 12:06:45 -08:00 |
Terence Parr
|
ab931e4449
|
Merge pull request #97 from sharwell/precedence-predicates
Precedence predicates
|
2013-11-14 11:54:55 -08:00 |
Sam Harwell
|
320fada3e3
|
When building trees in TestPerformance, compute checksum after the parse using ParseTreeWalker
|
2013-11-14 13:42:39 -06:00 |
Sam Harwell
|
49970a46b0
|
Improved handling of parse listeners in TestPerformance
|
2013-11-14 13:42:39 -06:00 |
Sam Harwell
|
33043d68c2
|
Add the USE_PARSER_INTERPRETER flag to TestPerformance
|
2013-11-14 13:42:38 -06:00 |
Sam Harwell
|
f6024aae0a
|
Updated interpreter APIs
* Add Grammar.createLexerInterpreter and Grammar.createParserInterpreter
* Rewrite LexerInterpreter to extend Lexer (greatly simplified)
|
2013-11-14 13:42:38 -06:00 |