Commit Graph

379 Commits

Author SHA1 Message Date
parrt f02db87c02 got nullable kids tree parsing working. got $rule.text in tree parsing working
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9077]
2011-09-24 17:12:22 -08:00
parrt e8a2a738cf rename TreeNodeStream
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9075]
2011-09-24 09:33:04 -08:00
parrt 93581cfa98 got v3 tests working in v4
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9074]
2011-09-24 09:14:22 -08:00
parrt 149033fb2e add more tests from v3
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9073]
2011-09-24 08:41:15 -08:00
parrt 9c5f636bea labels work with tree parsers now.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9072]
2011-09-22 17:32:25 -08:00
parrt b63b271815 got basic tree parser working.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9071]
2011-09-22 17:16:22 -08:00
parrt 0c1716d062 reorg to get tree parser gen'd
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9070]
2011-09-20 16:30:20 -08:00
parrt a126e2043a add file
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9069]
2011-09-20 16:22:25 -08:00
parrt 6c45753bea got basic tree parser ^(A B) stuff in.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9068]
2011-09-18 16:49:52 -08:00
parrt a8195e5d7c playing
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9067]
2011-09-11 16:20:42 -08:00
parrt a1c682434d removes the individual stacks to track rule invocations. $a::x now looks up the context stack for rule index RULE_a. they're not done very often and so it's better to say all of the overhead pushing and popping the contexts.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9066]
2011-09-11 16:12:01 -08:00
parrt 0e608ab0a4 clean up unit tests
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9065]
2011-09-11 15:16:53 -08:00
parrt 64ccba4168 rebuilt the code generator so that I generate a separate class for each labeled alternative and modify the listener so that it's always enter and exit rule; the type of the argument that distinguishes between them. I now create the overall rule context and then copy it into the alternative context if they have a label.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9064]
2011-09-11 15:09:55 -08:00
parrt bf19465437 Got a rule labels added to the tree and also altered code generation so that it pays attention to the labels. fairly major surgery but it's a nice refactoring.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9062]
2011-09-09 17:08:13 -08:00
parrt f13fd1973e mv ruleIndex, add alt
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9061]
2011-09-09 13:00:58 -08:00
parrt 62937ca639 rename visit->walk
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9060]
2011-09-08 16:52:30 -08:00
parrt 2d234ee28c Got the visitor thing cleaned up enough for a small example
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9059]
2011-09-08 13:45:05 -08:00
parrt da7e7c8813 clean up tree output, rename _ctx to context
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9058]
2011-09-08 12:12:51 -08:00
Udo Borkowski b671cb1fba add treeTextProvider and various "visual" properties to TreeViewer
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9057]
2011-09-08 10:05:23 -08:00
parrt 0e7911f99c add
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9056]
2011-09-07 20:47:39 -08:00
parrt c16782c848 tweak
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9055]
2011-09-07 17:13:32 -08:00
parrt 297087770e scope listener name in output
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9054]
2011-09-07 17:01:59 -08:00
parrt c79848cca0 gen listener file; reorg file generation
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9053]
2011-09-07 16:51:10 -08:00
parrt 4f2beaf69d rename discover/finish
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9052]
2011-09-07 15:04:35 -08:00
Udo Borkowski a440d4e988 add TreeViewer
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9051]
2011-09-06 08:45:28 -08:00
parrt 1e595a486a add
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9050]
2011-09-06 06:31:44 -08:00
parrt 730794128e parse tree visiting; now, we ALWAYS generate a return struct definition: rule_ctx.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9049]
2011-09-05 17:08:26 -08:00
parrt d3dc566a69 tweak
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9048]
2011-09-05 13:11:33 -08:00
parrt 99d5d64efb update ant build
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9047]
2011-09-05 13:05:58 -08:00
parrt afb767b99c should not be in depot
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9046]
2011-09-05 12:54:27 -08:00
parrt 0f74909c8c mv ruleIndex
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9045]
2011-09-05 12:49:54 -08:00
Udo Borkowski f93bc7aa7a add org.abego.treelayout
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9044]
2011-09-05 10:50:57 -08:00
parrt 528d6df1e3 added list of rule consts; parser ctx tracks rule index
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9043]
2011-09-05 08:28:24 -08:00
parrt 01020ee1bb more cleanup
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9042]
2011-09-04 15:55:45 -08:00
parrt 5c35165873 update the comment
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9041]
2011-09-04 13:49:40 -08:00
parrt 32a375bbf7 I split the tree interface into multiple simpler ones and removed the methods that can modify a node. Either you should use the adapter or, you know the concrete type and then you can call those methods directly not through the interface. The whole point of the interface is to be flexible but then for consistency users must use the adapters. I'm also starting to pull helper methods into a Trees "module". I also renamed CommonTree to be CommonAST. I also renamed the adapters appropriately.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9040]
2011-09-04 12:02:07 -08:00
parrt 783f1bc38f Split token into read-only and writable portions. added release method. moved the methods around that get input streams and token streams between interfaces. simplify the character stream interface by moving the gas line and get characterization methods to the lexer.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9039]
2011-09-03 17:36:14 -08:00
parrt 5c6f35abef did some reorganization
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9038]
2011-09-03 11:52:23 -08:00
parrt c1aa0fcd10 New parse tree mechanism
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9037]
2011-09-03 09:18:26 -08:00
parrt 104f39acde working on parse trees
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9036]
2011-09-02 17:15:36 -08:00
parrt 7aad57fe49 add
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9035]
2011-09-02 16:18:25 -08:00
parrt 62549b65bf add dbg classes. add mark/rewind
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9034]
2011-09-02 16:17:37 -08:00
parrt 085dd05bf1 got parser nongreedy loops going
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9032]
2011-08-12 19:51:12 -08:00
parrt f44c49a8b8 got lexer nongreedy loops going
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9018]
2011-08-07 11:19:34 -08:00
parrt a9782118ac add
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8985]
2011-08-04 08:56:08 -08:00
parrt d926ec9661 WOOT! all left-recursive tests pass
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8972]
2011-07-31 18:14:47 -08:00
parrt ec5d74c83e removed all traces of FORCED_ACTION
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8971]
2011-07-31 12:36:07 -08:00
parrt a7f2bc31ac ok, got new simple semantics in for sempreds; no forced actions and preds always eval unless ctx dependent, in which case they need to bein original rule.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8970]
2011-07-31 11:58:59 -08:00
parrt 328444244f backing out changes; tried 2 stacks; too complicated
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8969]
2011-07-31 10:38:48 -08:00
parrt d2651a50a6 backing out changes; tried 2 stacks; too complicated
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8968]
2011-07-31 10:38:23 -08:00