parrt
|
6b4e9905fb
|
rename member, tweak output. new chk for inf loop from error sync works
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9088]
|
2011-09-30 20:40:14 -08:00 |
parrt
|
60c9fe76c0
|
almost got new error mech in
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9087]
|
2011-09-30 20:22:09 -08:00 |
parrt
|
9e69640bc1
|
added more unit tests
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9086]
|
2011-09-27 17:09:17 -08:00 |
parrt
|
82360bfaa8
|
clean up
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9085]
|
2011-09-27 16:23:15 -08:00 |
parrt
|
c535d45f66
|
tweak
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9084]
|
2011-09-25 15:11:05 -08:00 |
parrt
|
cd2c4e622d
|
fix bug in code gen for * loops
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9082]
|
2011-09-25 14:43:37 -08:00 |
parrt
|
e3d6db0478
|
more unit tests
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9081]
|
2011-09-25 14:10:30 -08:00 |
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
|
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 |
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 |
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
|
99d5d64efb
|
update ant build
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 9047]
|
2011-09-05 13:05:58 -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
|
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
|
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
|
c713b3dd2d
|
rm print
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8967]
|
2011-07-30 17:22:56 -08:00 |
parrt
|
e32bae3276
|
rebuilt ATN structure for ()* and ()+; two decisions each now unless single alt.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8966]
|
2011-07-30 17:20:57 -08:00 |
parrt
|
2ebedba421
|
debugging
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8933]
|
2011-07-29 15:45:31 -08:00 |
parrt
|
0168e0837a
|
finished getting unit tests for action/pred exec during ATN simulation
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8932]
|
2011-07-29 14:49:16 -08:00 |
parrt
|
b90b073450
|
getting more unit tests in
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8924]
|
2011-07-29 14:05:19 -08:00 |
parrt
|
4b5cd3a9ba
|
We're forced to exec args, even if dependent on _localctx. If no actual context to use, create dummy context to use for arg eval only.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8922]
|
2011-07-29 11:45:27 -08:00 |
parrt
|
dcfb804ed3
|
added method to get context for non-arg rules
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8921]
|
2011-07-28 19:36:56 -08:00 |
parrt
|
cce6c70b2e
|
fixed context in sempred. don't exec forced actions either if in outer context and dependent.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8920]
|
2011-07-28 15:15:41 -08:00 |
parrt
|
3d15daccad
|
got predicate issue resolved. executes preds if not dependent on context and no dipping into outer context
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8919]
|
2011-07-28 12:43:28 -08:00 |
parrt
|
0cb91817d9
|
not tested but put locals into attr lookup for rule and code gen chunks + java.stg
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8917]
|
2011-07-28 10:29:12 -08:00 |
parrt
|
10d7a79324
|
reorg; cleanup. added ast.g ptr setting to nodes created during left-recursion elim.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8915]
|
2011-07-27 17:03:54 -08:00 |
parrt
|
e084c12483
|
rm gated sem pred and other weird variants
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8914]
|
2011-07-27 16:50:13 -08:00 |
parrt
|
9328c164af
|
set type
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8913]
|
2011-07-27 16:45:02 -08:00 |
parrt
|
2db09cdeb9
|
rm scopes for rules/grammar, added locals [int i, int j] for rules. i do not generate anything for the LOCALS tree at moment
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8912]
|
2011-07-27 16:43:16 -08:00 |
parrt
|
2136287966
|
tweak
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8911]
|
2011-07-27 15:55:30 -08:00 |
parrt
|
078e2ab47c
|
java.g working again.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8910]
|
2011-07-26 10:56:24 -08:00 |
parrt
|
fd3f8b17c9
|
~sets weren't working; got closer to java.g working again.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8909]
|
2011-07-25 18:09:00 -08:00 |
parrt
|
c6fa2fce6e
|
decided to clean up a bit, backtracking from updating current to have inner/outer context. will try with full ctx again.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8908]
|
2011-07-25 16:49:33 -08:00 |
parrt
|
76ca9ba0d5
|
a bit of clean up
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8907]
|
2011-07-24 16:24:18 -08:00 |
parrt
|
a29feac1bf
|
a bit of clean up
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8906]
|
2011-07-24 16:18:21 -08:00 |
parrt
|
b4b02bb813
|
cleaned up atn construction / set detection / unit tests. still not done full context in parser simulation
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8904]
|
2011-07-24 15:25:17 -08:00 |
parrt
|
1fcc12a7ad
|
changes to ATN simulator just before I try adding context back in.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8903]
|
2011-07-24 13:20:49 -08:00 |
parrt
|
66da1f723a
|
got unit tests working again for interp; got args funcs in output
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8902]
|
2011-07-24 11:48:43 -08:00 |
parrt
|
d51784a250
|
got lexer actions working again
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8901]
|
2011-07-23 12:58:09 -08:00 |
parrt
|
ba9f5d54e7
|
tweak
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8900]
|
2011-07-22 18:18:43 -08:00 |
parrt
|
3b52eb4e6a
|
snapshot
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8899]
|
2011-07-22 17:19:26 -08:00 |
parrt
|
40f9e867cd
|
23 import grammar unit tests pass
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8896]
|
2011-07-20 18:55:23 -08:00 |
parrt
|
36f3590f6c
|
got rule props in for current rule; fixed yet another freakin bug in implicit lexer extraction.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8895]
|
2011-07-19 19:18:16 -08:00 |
parrt
|
6dab71e160
|
symbol issue test working again
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8894]
|
2011-07-19 16:44:35 -08:00 |
parrt
|
66933e36a2
|
got token aliases checks done
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8893]
|
2011-07-19 11:54:37 -08:00 |
parrt
|
c6904bb21b
|
imports get merged into root grammar now.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8872]
|
2011-07-18 13:31:24 -08:00 |
parrt
|
7a109d29d5
|
added a LexerInterpreter and copied in unit tests
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8867]
|
2011-07-16 12:57:25 -08:00 |
parrt
|
9fb93fd090
|
fixed wildcard; ast ops all work now per tests :)
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8866]
|
2011-07-16 12:24:43 -08:00 |
parrt
|
8de1408365
|
rm bad error
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8865]
|
2011-07-16 12:01:44 -08:00 |
parrt
|
65396e6d7c
|
don't reduce SETs if elements ref'd in -> rewrite
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8864]
|
2011-07-16 11:49:14 -08:00 |
parrt
|
43f4ef59f7
|
track tokens in SETs
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8863]
|
2011-07-15 16:10:47 -08:00 |
parrt
|
f81d629780
|
new visitor does away with CollectSymbols.g
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8862]
|
2011-07-15 15:51:25 -08:00 |
parrt
|
b9ef4f9bee
|
woot! new visitor does away with BasicSemanticTriggers.g and Refs.g
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8861]
|
2011-07-14 19:25:08 -08:00 |
parrt
|
f36b1ad875
|
started refactoring to collapse tree walker grammars into visitors
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8856]
|
2011-07-14 11:33:25 -08:00 |
parrt
|
42f6b7cf86
|
after much bullshit, got sets working for ast stuff.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8855]
|
2011-07-13 17:29:20 -08:00 |
parrt
|
8a1a9d39cd
|
fixed ast structure unit tests
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8854]
|
2011-07-12 10:37:24 -08:00 |
parrt
|
39fe27dd1f
|
fixed outer most vs inner alt issue
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8853]
|
2011-07-12 10:21:34 -08:00 |
parrt
|
59178d9959
|
got most of AST op unit tests working
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8852]
|
2011-07-11 18:35:52 -08:00 |
parrt
|
dbceac768d
|
all rewrites working minus error checking ones
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8851]
|
2011-07-10 17:56:11 -08:00 |
parrt
|
1dc598c26e
|
got lots more rewrite ast done including predicates
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8850]
|
2011-07-10 17:07:07 -08:00 |
parrt
|
a06679fec7
|
cleaned up
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8849]
|
2011-07-09 17:00:15 -08:00 |
parrt
|
a20912ba73
|
got rid of ...IsRoot templates and model elements!
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8848]
|
2011-07-09 16:27:01 -08:00 |
parrt
|
a3da5c5f53
|
reorg to focus context fields in controller not factory and grammar.
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8847]
|
2011-07-09 15:45:34 -08:00 |
parrt
|
557e3a8389
|
got 61/81 rewrite ast tests working
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8846]
|
2011-07-08 17:50:25 -08:00 |
parrt
|
671a7f9038
|
got lots of ast rewrites working; off to do labels
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8845]
|
2011-07-07 12:52:05 -08:00 |
parrt
|
aad0a37525
|
got some rewrite AST tests to work; got ID[...]
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8841]
|
2011-07-06 16:35:20 -08:00 |
parrt
|
f8abf5d40b
|
A B+ -> ^(A B)* works! fixed ant build
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8838]
|
2011-07-06 13:42:35 -08:00 |
parrt
|
df80cb7622
|
good start on * and ? in rewrites
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8826]
|
2011-07-04 17:47:44 -08:00 |
parrt
|
fbc92258f6
|
got nested trees working:
a : A b C -> ^(A ^(b C))
| B
;
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8825]
|
2011-07-03 14:40:04 -08:00 |
parrt
|
d33b3a4a62
|
got A b C -> ^(A b C) working :)
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8824]
|
2011-07-03 12:18:47 -08:00 |
parrt
|
3cfbe39b4f
|
got _root0 defined; each SrcOp knows its block now; setting current block
[git-p4: depot-paths = "//depot/code/antlr4/main/": change = 8823]
|
2011-07-03 11:23:02 -08:00 |