Sam Harwell
bc646df824
Add missing @Nullable annotations
2014-03-20 09:25:59 -05:00
Sam Harwell
27270fdd05
Properly encapsulate LexerATNConfig.lexerActionExecutor, and mark as final
2014-03-20 09:25:37 -05:00
Sam Harwell
41e04a27c0
Fix lexerActionExecutor not being preserved when returning from a rule invocation in the lexer ( fixes #469 )
2014-03-20 09:21:28 -05:00
Sam Harwell
1dde17efea
Mark Recognizer.getTokenErrorDisplay as deprecated ( fixes #480 )
2014-03-20 07:19:01 -05:00
Sam Harwell
c35b59d3b8
Increment current while adding a collection to IntegerList ( fixes #474 )
2014-03-01 15:49:29 -06:00
Sam Harwell
72a65093e0
Return the correct tree when starting parser interpreter at an LR rule ( fixes #461 )
2014-02-06 20:53:20 -06:00
Sam Harwell
06ab99d16d
[maven-release-plugin] prepare for next development iteration
2014-02-04 17:19:12 -06:00
Sam Harwell
5e05b71e8b
[maven-release-plugin] prepare release 4.2
2014-02-04 17:19:11 -06:00
Sam Harwell
67b6415659
Fix ParseTreePatternMatcher.compile allowing invalid syntax
2014-02-03 19:43:36 -06:00
Sam Harwell
bf63d5afb9
Remove unused import
2014-02-03 19:35:53 -06:00
Sam Harwell
2730781c98
Fix documentation problems
2014-02-03 19:35:31 -06:00
Sam Harwell
daf793b1c1
ParserInterpreter handles RecognitionException in the same way as the generated code
2014-01-26 12:50:55 -06:00
Sam Harwell
ddbd7086b8
ParserInterpreter calls sync before adaptivePredict
2014-01-26 12:50:55 -06:00
Sam Harwell
dc1926cfe3
Fix encoding of -1 (EOF) in serialized lexer actions ( fixes #449 )
2014-01-24 14:42:53 -06:00
Sam Harwell
b35f46d93c
Create a shaded runtime artifact (includes runtime, annotations, and treelayout)
2014-01-23 22:28:58 -06:00
Sam Harwell
501317e14b
Include documentation from antlr4-annotations in the antlr4-runtime javadoc build
2014-01-23 13:40:03 -06:00
Terence Parr
3e45c4bc04
Merge pull request #443 from sharwell/consume-opt
...
Use the fetchedEOF field to often avoid an expensive LA(1) operation in consume
2014-01-23 10:06:18 -08:00
Sam Harwell
233a43f713
Use the fetchedEOF field to often avoid an expensive LA(1) operation in BufferedTokenStream.consume
2014-01-23 11:46:56 -06:00
Sam Harwell
cc045fbaf3
Improve CommonToken cloning performance, and update documentation
2014-01-23 07:23:55 -06:00
Sam Harwell
e116ad14ca
Added missing NotNull and Nullable annotations, and fix a case where it wasn't followed
2014-01-23 07:18:31 -06:00
Sam Harwell
2f54b3554b
Mark field PredictionContextCache.cache final
2014-01-23 07:18:09 -06:00
Sam Harwell
970ad8c526
Remove unused field SemanticContext.parent
2014-01-23 07:17:59 -06:00
Sam Harwell
416a92ef02
No need to run dot when compiling antlr4-annotations
2014-01-23 07:16:57 -06:00
Sam Harwell
32ab1a4d03
Updated documentation for CommonToken and CommonTokenStream
2014-01-23 07:12:53 -06:00
Sam Harwell
77342c2256
Added links to documentation
2014-01-23 07:12:53 -06:00
Sam Harwell
0949ff8249
Updated some wording in the documentation
2014-01-23 07:12:52 -06:00
Sam Harwell
58cc8f28d7
Added links to documentation
2014-01-23 07:12:52 -06:00
Sam Harwell
aba1178c49
Formatted documentation
2014-01-23 07:12:42 -06:00
Sam Harwell
d5b269b6b6
Updated documentation
2014-01-22 21:30:26 -06:00
Sam Harwell
608c6a8a3a
Update several usages of @NotNull and @Nullable based on warnings from NullUsageProcessor
2014-01-21 21:08:11 -06:00
Sam Harwell
d917ad46f7
Fix error count limiting in NullUsageProcessor
2014-01-21 21:06:57 -06:00
Sam Harwell
0454916a70
Updated documentation for NotNull and Nullable
2014-01-21 15:24:57 -06:00
Sam Harwell
07708d9223
Limit the number of errors reported for a single method or parameter
2014-01-21 14:40:25 -06:00
Sam Harwell
49f12fd28d
Add note about potential future features
2014-01-21 14:38:33 -06:00
Sam Harwell
4bc593b20b
Improved error reporting
2014-01-21 14:37:59 -06:00
Sam Harwell
37f83c6537
Add warning for potentially incorrect NotNull or Nullable annotations on derived methods and parameters
2014-01-21 14:37:19 -06:00
Sam Harwell
c1125fe474
Add check for erroneous overriding NotNull and Nullable annotations
2014-01-21 14:36:25 -06:00
Sam Harwell
e253954bcf
Check for NotNull and Nullable annotations on primitive types
2014-01-21 14:35:27 -06:00
Sam Harwell
2647856226
Error if a void method is annotated with NotNull or Nullable
2014-01-21 14:34:38 -06:00
Sam Harwell
e472cc4e23
Error if an element is annotated with both NotNull and Nullable
2014-01-21 14:33:38 -06:00
Sam Harwell
f8dbe1b68f
Initial annotation processor for NotNull and Nullable annotations
2014-01-21 14:32:11 -06:00
Sam Harwell
937c627b16
Move NotNull and Nullable annotations to their own artifact
2014-01-21 14:31:29 -06:00
Sam Harwell
eb3b84fa7d
Improved formatting of PredictionContext reference hash code algorithm
2014-01-19 22:06:25 -06:00
Sam Harwell
8d37254859
Allow customizing the path to dot (GraphViz)
2014-01-19 21:33:05 -06:00
Sam Harwell
f544da5f93
Fix label color for arrows in PredictionContext graphics
2014-01-19 21:32:42 -06:00
Sam Harwell
4507c1a270
Fix many errors reported by -Xdoclint
2014-01-19 21:03:07 -06:00
Sam Harwell
a55901bc0d
We are working on the 4.2 release
2014-01-19 13:43:57 -06:00
Sam Harwell
214b715107
Restrict lexer action execution to actions defined in the root lexer rule that matches a token
2014-01-18 16:06:12 -06:00
Sam Harwell
b3d3235614
Updated documentation for behavior of AbstractParseTreeVisitor.visitChildren (see #304 )
2014-01-16 16:09:58 -06:00
Sam Harwell
77fce95c22
Fix XPath implementation throwing exception
2014-01-16 15:47:34 -06:00
Sam Harwell
657d496d71
Prevent XPath from returning the same node multiple times ( fixes #370 )
2014-01-15 14:32:34 -06:00
Terence Parr
3c51f7ad7b
Add tests for ungrammatical tree patterns. Fixes #413
2014-01-15 11:15:31 -08:00
Sam Harwell
224bb0e9c0
Actually support all supported legacy ATN UUIDs ( fixes #410 )
2014-01-15 07:55:07 -06:00
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
Sam Harwell
715fe67fce
Fix ANTLRInputStream cannot seek to end of input
2014-01-14 20:09:50 -06:00
Sam Harwell
6934495853
Fixed documentation link
2014-01-14 20:06:05 -06:00
Terence Parr
f4e5b23baf
Merge pull request #405 from parrt/lexer-interp
...
Lexer interp
2014-01-14 18:05:22 -08:00
Terence Parr
8f3c01fb3b
check for empty tree list.
2014-01-14 19:27:09 -06:00
Terence Parr
f4967ff488
make sure we create an interpreter that knows its recognizer
2014-01-14 13:03:58 -06:00
Terence Parr
1246b58b0e
factor out setting of root so that external tools can reset the tree to get new display. Also allow setting of ruleNames list externally.
2014-01-14 12:44:05 -06:00
Terence Parr
40f0540d8a
make public for use for plugins
2014-01-14 12:36:36 -06:00
Sam Harwell
e75beb69b1
Add the StarLoopEntryState.precedenceRuleDecision field so the information can be shared between ParserATNSimulator and ParserInterpreter
2014-01-11 16:27:27 -06:00
Sam Harwell
bef086e874
Updated precedence DFA documentation
2014-01-09 20:32:44 -06:00
Sam Harwell
266f7276d1
Initial implementation of a "precedence DFA" ( fixes #400 )
2014-01-09 18:11:17 -06:00
Sam Harwell
9432bfb746
Do not cache the results of a failed predicate evaluation in the DFA ( fixes #398 )
2014-01-09 06:52:13 -06:00
Terence Parr
2d7b0b4178
intellij git missed these files
2013-12-20 12:47:58 -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
a2ba59d0ac
Use ATNDeserializer methods instead of deprecated ATNSimulator methods
2013-12-19 19:07:25 -06:00
Sam Harwell
fb1880d82c
Move ATNSerializer to runtime
2013-12-19 19:07:24 -06:00
Sam Harwell
7f15889d92
Make utility methods in ATNDeserializer static
2013-12-19 19:07:22 -06:00
Sam Harwell
5710eff8f8
Fix small warnings in XPath
2013-12-19 19:06:24 -06:00
Sam Harwell
8449b9258f
Updated documentation and API encapsulation for tree patterns
2013-12-19 19:06:23 -06:00
Sam Harwell
40bbd66231
Updated documentation for Token and TokenSource
2013-12-19 19:06:22 -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
45fd53bf2c
Remove unused method Lexer.nextTokenOrRuleToken
2013-12-19 19:06:20 -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
4b5cb78716
convert toMap usage to parser method calls
2013-11-25 09:40:05 -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
49c4a5ec12
fix labeling, add comments
2013-11-21 16:37:57 -08:00
Terence Parr
1e83557819
reorg to pass round a match object in matches_()
2013-11-21 10:30:37 -08:00
Terence Parr
4a46e1a679
rm dup code
2013-11-21 09:52:54 -08:00
Terence Parr
4cbe197a63
we can't use a lexer interpreter because it does not execute skip actions. I duplicate the lexer and use that
2013-11-21 09:50:16 -08:00
Terence Parr
68b9a7b414
cleanup dead code
2013-11-21 09:35:18 -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
599896cf1b
throw exception not null
2013-11-21 09:02:53 -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
0a314ddd49
merge upstream
2013-11-20 16:56:38 -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
42cdf244eb
stash
2013-11-20 16:42:28 -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
127d9bce3c
add comments to Chunk
2013-11-20 16:08:51 -08:00
Terence Parr
3439df0fb0
rm unneeded class
2013-11-20 15:57:50 -08:00
Terence Parr
92a32606cf
rm unused lexer
2013-11-20 14:04:40 -08:00
Terence Parr
889c831e1f
rm wildcard code
2013-11-20 14:02:06 -08:00
Sam Harwell
0981a397b5
Add option to generate rule bypass transitions during ATN deserialization
2013-11-20 09:14:25 -06:00
Sam Harwell
c4c2546fc9
Add the "verifyATN" deserialization option
2013-11-20 09:14:24 -06:00
Sam Harwell
affbe51077
Add ATNDeserializationOptions class
2013-11-20 09:14:24 -06:00
Sam Harwell
b447256f20
Extract ATN deserialization to a new class ATNDeserializer
2013-11-20 09:14:18 -06:00
Terence Parr
f99cc52d39
rm any/all pattern
2013-11-19 09:19:32 -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
Sam Harwell
10cd96f809
Generate code for XPathLexer during the build
2013-11-14 15:35:43 -06:00
Terence Parr
ab931e4449
Merge pull request #97 from sharwell/precedence-predicates
...
Precedence predicates
2013-11-14 11:54:55 -08:00
Sam Harwell
2b5f1c14a1
Add deprecated methods to preserve backwards compatibility
2013-11-14 13:37:24 -06:00
Terence Parr
b26926570d
move getChildren() from Tree into Trees
2013-11-13 16:18:50 -08:00
Sam Harwell
7e3711aca2
Preserve backwards compatibility for grammars generated with versions of the tool prior to adding precedence predicates
2013-10-10 21:10:11 -05:00
Sam Harwell
b14ca56441
Merge branch 'master' into precedence-predicates
2013-10-10 20:36:38 -05:00
Terence Parr
9cd32f36b4
remove comment and package spec from grammar
2013-09-17 17:13:10 -07:00
Terence Parr
8aeb90ef82
mv findAll to XPath; rm old test in playground.
2013-09-16 14:56:35 -07:00
Terence Parr
6b1cef745c
rm unneeded getChildren
2013-09-16 14:50:13 -07:00
Terence Parr
004f47174b
rm comment
2013-09-13 13:57:20 -07:00
Terence Parr
01082414c3
rebuilt XPath using ANTLR itself; added error handling; added ! operator
2013-09-13 13:53:42 -07:00
Terence Parr
a86895c557
prototype xpath
2013-09-12 17:22:02 -07:00
Terence Parr
211f69d0f1
simplify
2013-09-12 17:12:54 -07:00
Terence Parr
09ddded3ed
cleaned up test rig. more tests. fix bugs.
2013-09-11 17:49:25 -07:00
Terence Parr
088cd4a9bc
got test rig start. added support test rig stuff to exec parser. add findAll to ParseTree interface.
2013-09-11 14:59:53 -07:00
Terence Parr
3fda64f85b
got a draft implementation
2013-09-11 11:25:07 -07:00
Terence Parr
8237952cbb
stash
2013-09-10 20:11:01 -07:00
Terence Parr
20d8545e3d
stash
2013-09-10 19:51:11 -07:00
Terence Parr
913cda0721
adding more xpath expr types
2013-09-10 19:48:36 -07:00
Terence Parr
76418c2b9b
refine getChildren() method to narrow return type.
2013-09-10 17:43:25 -07:00
Terence Parr
cbd6e17925
oops; need method: add getChildren() method to Tree.
2013-09-10 17:37:20 -07:00
Terence Parr
00fa2c7617
add getChildren() method to Tree.
2013-09-10 17:34:24 -07:00
Terence Parr
d505a393ef
tweak
2013-09-10 15:14:53 -07:00
Terence Parr
d2caae46a7
working on xpath
2013-09-10 14:55:40 -07:00
Terence Parr
145aeb955d
initial add of xpath stuff
2013-09-10 13:18:47 -07:00
Terence Parr
76b4eef60a
more unit tests; add <.>
2013-09-09 17:26:16 -07:00
Terence Parr
95aa103dc2
matches text now if not <ID> node
2013-09-09 15:13:37 -07:00
Terence Parr
f995e47443
rm ruletag from ParserRuleContext; back to (expr <expr>) for tag in pattern
2013-09-09 14:54:44 -07:00
Terence Parr
94d3c71b02
rm unneeded IF check
2013-09-09 14:47:02 -07:00
Terence Parr
90187039f0
foo
2013-09-09 14:45:46 -07:00
Terence Parr
0df4411ea7
got optimized tree back with <expr> as single node
2013-09-09 13:50:33 -07:00
Terence Parr
7ead36fb4b
fix error handling to just match <expr> as token under expr RuleNode
2013-09-08 19:10:04 -07:00
Terence Parr
cfac804b57
fix error handling to just match <expr> as token under expr RuleNode
2013-09-08 18:56:07 -07:00
Terence Parr
b1c4c77d28
tweak
2013-09-05 17:16:43 -07:00
Terence Parr
754348605d
create match object for matching
2013-09-05 16:58:37 -07:00
Terence Parr
4b87f84b99
got decent test rig
2013-09-04 17:09:14 -07:00
Terence Parr
731b0f6528
damn intellij
2013-09-04 14:51:04 -07:00
Terence Parr
531c31861a
got basic pattern compilation going
2013-09-04 14:48:21 -07:00
Terence Parr
56cd7cdf2c
split apart
2013-09-04 12:37:04 -07:00
Terence Parr
5f60ad859e
stash
2013-09-04 10:15:22 -07:00
Terence Parr
1070d3a10f
improved tag matching, got escapes working.
2013-09-03 18:32:54 -07:00
Terence Parr
d4316ff44b
ah. stupid intellij didn't submit
2013-09-02 18:21:21 -07:00
Terence Parr
b4a7ace911
got decent start
2013-09-02 18:20:58 -07:00
Terence Parr
3416f6db05
playing with initial matcher
2013-09-01 15:43:50 -07:00
Terence Parr
ba6c711e85
avoid resource leak upon write() exception (Coverity)
2013-08-31 17:31:17 -07:00
Terence Parr
be0d6b3fce
clean up equals/hashcode for Interval (Coverity)
2013-08-31 17:25:32 -07:00
Terence Parr
d22290d44f
consistent return of null for empty DFA (Coverity)
2013-08-31 17:20:00 -07:00
Terence Parr
a7a2050fd2
rm dead code (Coverity)
2013-08-31 17:19:12 -07:00
Terence Parr
d0b9e7388c
change cast to null chk (Coverity)
2013-08-31 17:08:25 -07:00
Terence Parr
9420672520
make explicit that graphs must be EmptyContext, never null (Coverity)
2013-08-31 16:29:40 -07:00
Terence Parr
d4f2abc5e3
resource leak fix from Coverity Scan
2013-08-31 13:01:53 -07:00
Terence Parr
68723eff20
fix null ptr exception as reported by Coverity
2013-08-29 17:11:52 -07:00
Sam Harwell
274120c2b6
Now working on release 4.1.1
2013-07-02 19:11:04 -05:00
Sam Harwell
6236072e3b
Documentation updates prior to release
2013-06-30 15:50:56 -05:00
Sam Harwell
89a251e497
Simplify ArrayPredictionContext.isEmpty()
2013-06-30 15:42:27 -05:00
Sam Harwell
05f7fc6500
Update development version to 4.1 (from 4.0.1)
2013-06-30 12:46:41 -05:00
Sam Harwell
c3af4e9b7b
Merge pull request #278 from sharwell/reduce-gc
2013-06-24 15:35:21 -05:00
Sam Harwell
ca21368961
Merge pull request #290 from sharwell/fix-288
...
Remove the ParserRuleContext.altNum field (fixes #288 )
2013-06-24 13:22:53 -07:00
Sam Harwell
c58721b78c
Merge pull request #291 from sharwell/fix-282
2013-06-24 15:17:01 -05:00
Sam Harwell
b0ddb45654
Merge pull request #284 from sharwell/epsilon-analysis
...
Add the EPSILON_CLOSURE error and EPSILON_OPTIONAL warning
2013-06-24 13:09:38 -07:00
Sam Harwell
7453ddaf72
closureBusy set is only necessary to prevent infinite recursion for right-recursive SLL rules ( fixes #282 )
2013-06-24 14:57:55 -05:00
Sam Harwell
f6bcbdba61
Remove the ParserRuleContext.altNum field ( fixes #288 )
2013-06-24 12:20:46 -05:00
Sam Harwell
e575dc40e3
Merge pull request #285 from sharwell/non-greedy-optional
...
Fix ATN created for non-greedy optional block with multiple alternatives
2013-06-24 10:01:40 -07:00
Sam Harwell
40f41e2b1c
Fix ATN created for non-greedy optional block with multiple alternatives
2013-06-14 21:05:58 -05:00
Sam Harwell
3bb774a508
Add the EPSILON_CLOSURE error and EPSILON_OPTIONAL warning
2013-06-14 20:53:34 -05:00
Sam Harwell
84324f1dad
PredictionContext instances are not naturally ordered, so remove Comparable implementation
2013-06-06 15:44:38 -05:00
Sam Harwell
4c45a4bc66
Reduce GC requirements by creating fewer objects during closure
2013-06-06 15:39:22 -05:00
Sam Harwell
9d11817667
Resize ANTLRInputStream.data after reading a file with fewer characters than bytes
2013-06-01 22:11:19 -05:00
Sam Harwell
2a90413188
Use standard 0-based indexing
2013-06-01 22:07:27 -05:00
Sam Harwell
dc801ad6a7
Extend the supported input character range to include all UTF-16 code points (specifically, U+FFFF is now supported, fixes #267 )
2013-06-01 22:03:18 -05:00
Sam Harwell
780b7ac4ce
Document ANTLRErrorListener and DiagnosticErrorListener ( fixes #265 )
2013-06-01 22:00:06 -05:00
Sam Harwell
f1f134c962
DiagnosticErrorListener includes rule names for each decision in its reports
2013-06-01 21:55:31 -05:00
Sam Harwell
469ebdd6e8
Fix unit tests now that the parser might not compute the conflicting alts BitSet before calling report methods
2013-05-20 14:58:32 -05:00
Sam Harwell
13f121a16f
Add @NotNull annotations to listener and visitor methods
2013-05-20 14:20:54 -05:00
Sam Harwell
0644d1a471
Remove statistics gathering from ParserATNSimulator that's more suited for specialized listeners
2013-05-18 14:18:53 -05:00
Sam Harwell
d8f2a5ce3c
Pass more information to ANTLRErrorListener methods
2013-05-18 14:17:36 -05:00
Sam Harwell
d9d5100105
Use JavaUnicodeInputStream for proper handling of Unicode escape sequences in Java source code
2013-05-17 23:47:59 -05:00
Sam Harwell
f9f4883855
Updated documentation in LL1Analyzer
2013-05-14 16:26:45 -05:00
Sam Harwell
c0d1fcc110
Use 0-based indexing for decision lookahead so we aren't wasting memory, and array indexing is now consistent with ATN state outgoing transitions indexing
2013-05-14 09:57:04 -05:00
Sam Harwell
33c316baa4
Use a called rule stack to prevent stack overflow in LL1Analyzer
2013-05-14 09:54:27 -05:00
Sam Harwell
d67d924b0d
Update additional classes to use MurmurHash hashing
2013-05-05 14:21:42 -05:00
Sam Harwell
fc21b41afb
Update PredictionContext to use the MurmurHash 3 hash algorithm
2013-05-05 14:21:41 -05:00
Sam Harwell
a7d2838838
Add a default title to the TreeViewer dialog
2013-05-01 22:38:36 -05:00
Sam Harwell
2fe7804ee3
Tweak TreeViewer layout since the zoom slider only affects the visual layout
2013-05-01 22:38:05 -05:00
Bart Kiers
9a75c629d2
Added JTree to TreeViewer.
2013-05-01 22:14:12 -05:00
Terence Parr
eb9eb17aa2
inline predictATN into adaptivePredict
2013-04-25 17:39:37 -07:00
Sam Harwell
5821747a42
Add TestPerformance.COMPUTE_TRANSITION_STATS
2013-04-24 12:47:25 -05:00
Sam Harwell
ca0b0ae74c
Extract methods getExistingTargetState and computeTargetState
2013-04-24 12:42:18 -05:00
Sam Harwell
f015942b5e
* Simplify creation of new DFA edges - only create the target state and let DFA code check for termination conditions
...
* Fix handling of previously cached error edges (always need to check previous state for reaching a rule stop state)
* Fix DFA created during SLL-only parsing (should be identical to the DFA created by full LL parsing)
2013-04-24 12:29:43 -05:00
Sam Harwell
297754fff5
Updated documentation for addDFAEdge and addDFAState
2013-04-24 12:18:18 -05:00
Sam Harwell
1a07a6b6fa
Improved encapsulation in ParserATNSimulator
2013-04-24 12:18:17 -05:00
Sam Harwell
ef8b10ebc4
Cleanup and encapsulation in LexerATNSimulator
2013-04-24 12:18:13 -05:00
Sam Harwell
25676332fb
Remove unused and undocumented method DFA.getATNStatesAlongPath
2013-04-24 10:32:51 -05:00
Sam Harwell
88e836c4d9
Remove unused class ParserATNPathFinder
2013-04-24 10:30:58 -05:00
Sam Harwell
845bf53a51
Use HashMap instead of LinkedHashMap for DFA.states
2013-04-22 16:42:48 -05:00
Sam Harwell
7ebcc41b7b
Cache the ATNConfigSet hash code after it's made read only
2013-04-22 16:13:22 -05:00
Sam Harwell
a55a94c26e
Use a better hash code for DFAState
2013-04-22 16:13:13 -05:00
Sam Harwell
6c8a6178ee
Avoid constructing the mergeCache when it's not needed
2013-04-22 16:12:20 -05:00
Sam Harwell
ecf2258380
Revert "add counter for stack graph nodes."
...
This reverts commit 43e73c8da9
.
2013-04-21 13:11:40 -05:00
Terence Parr
c81a839897
Merge branch 'master' of github.com:antlr/antlr4
2013-04-20 10:14:10 -07:00
Terence Parr
43e73c8da9
add counter for stack graph nodes.
2013-04-20 10:13:02 -07:00
Sam Harwell
a4d174f44b
Remove statistics that lost their meaning
2013-04-18 15:52:40 -05:00
Sam Harwell
aaea26ee3a
Remove execDFA - it doesn't do anything execATN doesn't do
2013-04-18 15:52:37 -05:00
Sam Harwell
9206a263b7
Add error edges to DFA
2013-04-18 15:52:34 -05:00
Sam Harwell
64354e5740
Add computed state to DFA before moving to full context simulation
2013-04-18 15:52:31 -05:00
Sam Harwell
2393cfd40e
Remove unnecessary locals
2013-04-18 15:52:28 -05:00
Sam Harwell
5727128722
Allow ATN fallback in parser to continue to use DFA edges when available
2013-04-18 15:52:26 -05:00
Sam Harwell
a90529720e
Don't try to optimize read-only configuration sets
2013-04-18 15:52:23 -05:00
Sam Harwell
2410b97aab
addDFAEdge needs to return the true target state of the added edge
2013-04-18 15:52:20 -05:00
Sam Harwell
74f4938033
Remove unnecessary duplicate conditions
2013-04-18 15:52:17 -05:00
Sam Harwell
3defe6a2b1
Remove comments with incorrect concurrency requirements
2013-04-18 15:52:14 -05:00
Sam Harwell
bc9fd41ae5
Remove unnecessary local
2013-04-18 15:52:11 -05:00
Sam Harwell
db85cbc257
Fix EOF handling when closure operation was skipped ( fixes #218 )
2013-04-12 14:02:24 -05:00
Sam Harwell
5c2b764670
Finer locks in DFA updates
2013-04-12 13:19:40 -05:00
Sam Harwell
8b3062175d
Fewer and finer locks on ATNSimulator.sharedContextCache
2013-04-12 13:19:04 -05:00
Sam Harwell
05f667d2e5
Initialize the elements of the decisionToDFA arrays when the array is created
2013-04-12 13:17:53 -05:00
Sam Harwell
2242948c03
Merge branch 'fix-76'
2013-03-27 15:02:17 -05:00
Sam Harwell
f75878b3e6
Merge branch 'fix-196'
2013-03-27 15:01:45 -05:00
Sam Harwell
c592e41637
Split serialized ATN in Java target to ensure string literals are under 65535 bytes limit ( fixes #76 )
2013-03-27 11:04:28 -05:00
Sam Harwell
15a23c3cd9
Configs "in context" have special meaning for predicate transitions, so don't add them to closure busy as a visited state or some configs could be improperly eliminated from the closure set ( fixes #196 )
2013-03-26 23:11:20 -05:00
Sam Harwell
0bdf5aa4d1
Remove unused Parser utility method toStrings left over from output=template
2013-03-26 18:53:12 -05:00
Sam Harwell
dd9ba73b6f
Improved documentation and use of the Parser._tracer field; made the field private instead of protected
2013-03-26 18:53:09 -05:00
Sam Harwell
18bb9dc9be
Updated documentation of getBuildParseTree and setBuildParseTree
2013-03-26 18:53:06 -05:00
Sam Harwell
a60df9d28e
Updated documentation of Parser's parse listener related methods; event trigger methods are protected instead of public
2013-03-26 18:53:03 -05:00
Sam Harwell
3acc78cf87
Use full name "listener" for variables instead of just "l"
2013-03-26 18:53:00 -05:00
Sam Harwell
a087ed17ee
Updated Parser documentation
2013-03-26 18:52:57 -05:00
Sam Harwell
f12de7dfa7
Remove unused (commented out) code
2013-03-26 18:52:54 -05:00
Sam Harwell
1d3910a78b
Updated documentation of Parser fields
2013-03-26 18:52:51 -05:00
Sam Harwell
cb6207e707
Updated documentation of Parser.match and Parser.matchWildcard
2013-03-26 18:52:49 -05:00
Sam Harwell
c577f5abfe
Updated documentation in RecognitionException
2013-03-26 18:52:46 -05:00
Sam Harwell
6adf9bc95d
Remove unnecessary null check
2013-03-26 18:42:21 -05:00
Sam Harwell
a7e021da4c
Updated ANTLRErrorStrategy and DefaultErrorStrategy documentation
2013-03-26 18:42:18 -05:00
Sam Harwell
1213aaad0b
Call inErrorRecoveryMode instead of accessing the errorRecoveryMode field directly
2013-03-26 18:42:16 -05:00
Sam Harwell
185172caac
Improved encapsulation of DefaultErrorStrategy internal implementation details (protected methods instead of public)
2013-03-26 18:42:13 -05:00
Sam Harwell
56e49fdc38
ANTLRErrorStrategy.sync and recover can throw a RecognitionException, but not reportError
2013-03-26 18:41:48 -05:00
Sam Harwell
70452f7e4b
ANTLRErrorStrategy.beginErrorCondition and endErrorCondition were implementation details. Replaced them with the API-relevant alternatives reset and reportMatch
2013-03-26 18:41:45 -05:00
Sam Harwell
6c4f4181d9
Simplify the ANTLRErrorStrategy interface by reusing the token factory from the parser instead of having the error strategy maintain its own separately
2013-03-26 18:41:42 -05:00
Sam Harwell
07689de50f
Updated @NotNull and @Nullable annotations, linked documentation
2013-03-26 18:41:39 -05:00
Sam Harwell
c6a9d62b25
Track the number of syntax errors in Parser.notifyErrorListeners instead of in the error strategy
2013-03-26 18:23:06 -05:00
Sam Harwell
bc17cd4a28
Move primary implementation of getExpectedTokens to ATN, fixes #191
2013-03-26 18:14:19 -05:00
Sam Harwell
4f29c2fe3d
Updated ATN documentation
2013-03-26 18:14:16 -05:00
Sam Harwell
f6ad977e0d
ATN fields grammarType and maxTokenType are now final
2013-03-26 18:14:13 -05:00
Sam Harwell
8b6c994694
Remove unnecessary field ATN.stateNumber
2013-03-26 18:14:10 -05:00
Sam Harwell
36abbda44f
Create ATNType enumeration for ATN.grammarType field, use UUID instead of incrementing a version number for improved reliability across branches
2013-03-26 18:14:07 -05:00
Sam Harwell
7d52fb7ecd
Add a PNG Files filter and select it by default
2013-03-07 15:21:49 -06:00
Sam Harwell
5fdb01499d
Handle the overwrite confirmation by overriding JFileChooser.approveSelection
2013-03-07 15:21:18 -06:00
Bart Kiers
c62dfdaa69
Expanded PNG export functionality.
2013-03-07 21:09:51 +01:00
Terence Parr
347375ec04
Move "png" button to the right of "OK", refactor export action to its own method
2013-03-06 15:20:30 -06:00
Sam Harwell
82a00104f6
Fix formatting problems in pull request
2013-03-06 15:15:32 -06:00
Bart Kiers
39f58b95ae
Added a export-to-PNG button in the dialog that is launched after invoking org.antlr.v4.runtime.misc.TestRig with the "-gui" parameter. When pressed, a PNG file of the parse tree is created in the present working directory.
2013-03-06 21:05:19 +01:00
Sam Harwell
e0e6e0a94c
Specify locale for all format operations ( fixes #158 )
2013-03-06 11:26:38 -06:00
Sam Harwell
fef6dd2885
Allow direct calls to left-recursive rules ( fixes #161 )
2013-03-06 10:48:42 -06:00
Sam Harwell
03f8d3772f
Fix comparison with IntStream.EOF
2013-02-26 11:09:24 -06:00
Terence Parr
b372d4d88d
add TODOs and fix a -1 to be a constant.
2013-02-23 14:03:20 -08:00
Sam Harwell
53f147bb18
Clarify type widening casts
2013-02-22 14:10:17 -06:00
Sam Harwell
bb36baeb21
Add a non-null default source Pair for CommonToken
2013-02-22 14:10:15 -06:00
Sam Harwell
1789e1685b
Pair and Triple are immutable, and Triple is not a Pair
2013-02-22 14:09:29 -06:00
Sam Harwell
3d59e47fb4
Remove unnecessary method Utils.replace (already exists as String.replace)
2013-02-22 14:08:51 -06:00
Terence Parr
c46bce3251
rm bad comment.
2013-02-18 10:27:58 -08:00
Sam Harwell
adf80e166a
Fix IntervalSet.add when multiple merges are required
2013-02-05 13:11:49 -06:00
Dave Parfitt
ee0dc0542a
don't call process() if args aren't specified
2013-01-29 11:34:29 -05:00
Sam Harwell
e1cce61400
Development line is now 4.0.1
2013-01-21 19:20:01 -06:00
Sam Harwell
ad9bac9519
Fix diagrams for ATNState documentation
2013-01-21 13:39:53 -06:00
Sam Harwell
b956a9eda1
Fix incorrect HTML excape in Javadoc code tag
2013-01-21 13:13:14 -06:00
Sam Harwell
0054cc020a
Prediction context documentation including graphs
2013-01-21 13:13:12 -06:00
Sam Harwell
d79bc252bc
TestRig uses instance fields instead of static fields, allows reuse from other applications
2013-01-12 14:11:22 -06:00
Sam Harwell
7ae67de110
Reduce size of _serializedATN by adding 2 to each element: new representation avoids embedded values 0 and 0xFFFF which are common and have multi-byte representations in Java's modified UTF-8
2013-01-11 13:34:08 -06:00
Sam Harwell
3bfd7c3770
Add map from Java's logical fonts to postscript font names
2013-01-10 15:02:17 -06:00
Sam Harwell
f19059d6b5
Calculate font metrics from the system
2013-01-10 15:02:11 -06:00
Sam Harwell
d1ba09f1f7
Clarify number of allowed transitions leaving a state
2013-01-05 14:34:16 -06:00
Sam Harwell
93f7a448e7
Add graphs describing ATNState relations
2013-01-05 05:47:15 -06:00
Sam Harwell
d95cdab065
Updated documentation in PredictionMode
2013-01-03 04:03:34 -06:00
Sam Harwell
4010c599ba
Clarify the impact of configurations in rule stop states on the parser prediction termination algorithm
2013-01-03 02:46:24 -06:00
Sam Harwell
2b2114c3ae
Javadoc formatting, clarification, and links
2013-01-03 02:45:09 -06:00
Sam Harwell
90c234895a
Added javadocs for recently added methods
2013-01-03 02:44:39 -06:00
Sam Harwell
6c23a96046
Always update ATNConfigSet.hasSemanticContext and ATNConfigSet.dipsIntoOuterContext when adding configurations to the set; remove unnecessary manual updates
2013-01-03 02:41:02 -06:00
Sam Harwell
4754ef993a
Simplify similar code paths
2013-01-02 13:46:00 -06:00
Sam Harwell
51437b7eed
Fix handling of rule stop states in full context mode
2013-01-02 13:45:59 -06:00
Sam Harwell
1f4f850765
Remove unnecessary null checks
2013-01-02 13:45:58 -06:00
Sam Harwell
43c5dd0a67
Handle potential null value
2013-01-02 13:45:57 -06:00
Sam Harwell
0b7a0a4c4b
Add several additional checks to verifyATN
2013-01-02 13:45:55 -06:00
Sam Harwell
6a9a6f7e50
Extract checkCondition helper method
2013-01-02 13:45:54 -06:00
Sam Harwell
21ac9a3ebe
ATNSimulator.stateFactory sets the ruleIndex (required), not the stateNumber (it's overwritten in ATN.addState)
2013-01-02 12:50:57 -06:00
Sam Harwell
a5e0c47be5
Formatting: no space after cast
2013-01-02 12:49:12 -06:00
Sam Harwell
fbfa61c3dd
Remove tree parser reference
2013-01-02 12:48:58 -06:00
Sam Harwell
4040dc0d6d
After consuming EOF, only configurations in a RuleStopState are viable
2013-01-02 09:03:14 -06:00
Sam Harwell
b34ad624bc
No need to continue SLL prediction if every configuration is at a RuleStopState
2013-01-02 09:02:23 -06:00
Sam Harwell
2080be8a14
Cannot call IntStream.consume after EOF is reached
2013-01-02 08:30:25 -06:00