Commit Graph

1517 Commits

Author SHA1 Message Date
Michael Peyton Jones f3abfb79b7 Remove special offset handling for EOFs.
They can just use the position provided by the lexer.
2014-10-27 17:38:25 +00:00
Sam Harwell e0cf581d40 Fix handling of lexer accept positions for zero-length tokens and at EOF 2014-10-26 15:45:43 -05:00
Fabio Ramponi 5f1759cc54 added Serializable interface to Pair class
In order to serialize an ArrayList of CommonTokens without errors
2014-10-16 13:57:22 +02:00
Terence Parr 11aed36aa4 Merge pull request #722 from sharwell/fix-667
Fix multiple issues with getSourceName
2014-09-29 09:36:41 -07:00
Terence Parr b960d4b39d Merge pull request #712 from sharwell/fix-711
Improve runtime vocabulary information
2014-09-29 09:32:51 -07:00
Sam Harwell 065c3e68b8 Add additional NotNull and Nullable annotations 2014-09-28 12:12:16 -05:00
Sam Harwell 90071c69b8 Fix getSourceName returning null (fixes #667) 2014-09-28 12:12:15 -05:00
Petr Bělohlávek 78c24f0588 indentation fix 2014-09-27 11:47:13 +02:00
Sam Harwell 35bbdfb65c Allow XPath matching by literal or symbolic name (fixes #579) 2014-09-26 21:37:13 -05:00
Sam Harwell d476d3e5d9 Implement token vocabulary (fixes #711) 2014-09-26 21:37:11 -05:00
Terence Parr e3f2e5a7d0 Merge pull request #715 from sharwell/fix-487
NullUsageProcessor supports Java 6 through 8
2014-09-26 14:31:41 -07:00
Sam Harwell 4f56bb7ab0 Add Parser.isTrace() (fixes #701) 2014-09-25 22:11:32 -05:00
Sam Harwell fbe762374c NullUsageProcessor supports Java 6 through 8 (fixes #487) 2014-09-25 22:05:58 -05:00
Terence Parr 6e581b3be6 Merge pull request #691 from sharwell/fix-688
Improved support for zero-length lexer tokens
2014-09-02 13:25:14 -07:00
Terence Parr 6e869b3e80 Merge pull request #695 from parrt/prec-filter-comments
add parrt summary of conversation with Sam about precedence DFA optimization
2014-09-01 13:16:23 -07:00
Terence Parr fd194f073b add parrt summary of conversation with Sam about precedence DFA optimization 2014-09-01 13:15:21 -07:00
Terence Parr 7bf47e1670 Merge pull request #694 from sharwell/fix-309
Implement channels{} block
2014-09-01 12:56:57 -07:00
Sam Harwell cacd317d02 Implement support for defining custom channels in the channels{} construct in lexer grammars (fixes #309) 2014-09-01 13:28:08 -05:00
Sam Harwell 6790b25e5b Support zero-length tokens in the lexer (fixes #688) 2014-08-28 23:45:07 -05:00
Sam Harwell b62408067e Update precedence filter to properly handle stepping out of left-recursive rules (fixes #679) 2014-08-28 23:21:32 -05:00
Terence Parr 70dd5227c1 prepare for changes beyond 4.4 2014-07-16 19:45:59 -07:00
Terence Parr 775aaa6494 got javadoc DOT images in; updated font names to avoid warnings 2014-07-02 19:10:36 -07:00
Terence Parr 2bcf5c6b63 use 1.6 to compile 2014-07-02 12:19:21 -07:00
Terence Parr 2e352e2697 add unit tests for -o and -lib; improve BaseTest: refactor writeFile to Utils. -o options and others not accepted by antlr(). 2014-06-29 12:21:39 -05:00
Terence Parr 31aa7bf5c9 Re-factor loading profile in the streams so that I can reuse that load elsewhere. handy function. 2014-06-29 12:03:29 -05:00
Sam Harwell 91206869c5 Prepare for next development iteration 2014-06-28 22:40:33 -05:00
Terence Parr 4acb1091de refactor for reuse, make target check majorminor only. 2014-06-28 14:55:34 -07:00
Sam Harwell 7d88b0106a [maven-release-plugin] prepare for next development iteration 2014-06-18 21:25:44 -05:00
Sam Harwell 201eeb147d [maven-release-plugin] prepare release 4.3 2014-06-18 21:24:24 -05:00
Sam Harwell bbac283ba2 Add @since documentation to key new exposed API types/methods 2014-06-18 19:48:07 -05:00
Sam Harwell a72058bc67 Update dependency versions 2014-06-18 19:37:30 -05:00
Sam Harwell 3378be9c79 Update all version numbers for consistency prior to the 4.3 release 2014-06-18 19:37:29 -05:00
Sam Harwell 6949e832d9 Updated comments to clarify recent changes in code 2014-06-18 19:12:26 -05:00
Sam Harwell 2be522f009 Relax the default version mismatch listener to only throw an exception if the major or minor version components do not match 2014-06-18 17:41:28 -05:00
Sam Harwell f7a840c764 Move RuntimeMetaData.VERSION field to the top of the source file 2014-06-18 17:07:43 -05:00
Sam Harwell 8809cc4950 Fix documentation errors reported during the build 2014-06-17 06:35:11 -05:00
Terence Parr 91752af88d Merge pull request #623 from parrt/fix-set-subtract
getMinElement now supports values < 0.  Checked and shouldn't affect any...
2014-06-16 12:41:50 -07:00
Sam Harwell 2920ad0d1a * Updated documentation for IntSet
* Reimplemented IntervalSet.subtract and IntervalSet.complement to operate over the complete range of supported values
* Expanded several methods in IntervalSet to operate on any IntSet
* Mark COMPLETE_CHAR_SET and EMPTY_SET as read-only
2014-06-16 14:23:52 -05:00
Terence Parr 8f08802716 Merge pull request #626 from sharwell/fix-622
Fix edge case behavior of nextTokenOnChannel and previousTokenOnChannel
2014-06-16 09:59:51 -07:00
Sam Harwell e311ec63b4 Fix edge case behavior of nextTokenOnChannel and previousTokenOnChannel (fixes #622, fixes #544) 2014-06-16 11:39:16 -05:00
Sam Harwell 3574cbd94b Add an additional note about the relation between reportContextSensitivity and reportAmbiguity 2014-06-16 00:01:42 -05:00
Sam Harwell 64b6408e4a Update documentation for ANTLRErrorListener (fixes #603) 2014-06-15 23:56:50 -05:00
Terence Parr 51430018d0 getMinElement now supports values < 0. Checked and shouldn't affect any uses. subtract() from set with EOF, wiped out all negative values. added tests. 2014-06-14 13:14:32 -07:00
Terence Parr 358a1025d2 tweaks per Sam's comments. Just pushing straight to master. 2014-06-10 11:28:43 -07:00
Terence Parr cc36281ce2 new definition of context sensitivity required change in test code. Updated profiler per Sam's comments. 2014-06-03 22:04:02 -07:00
Terence Parr eeac7bc1c8 Merge branch 'master' into accurate-ctx-sensitive-check 2014-06-03 21:51:56 -07:00
Terence Parr 40294f2270 go to 4.3 not 4.2.3 2014-06-03 21:48:03 -07:00
Terence Parr 015b9c900e Merge branch 'master' into accurate-ctx-sensitive-check 2014-06-03 21:40:07 -07:00
Terence Parr 8d17f43f57 Merge pull request #601 from sharwell/versioning-docs
Versioning updates and documentation
2014-06-03 21:39:11 -07:00
Sam Harwell b8be9aadd1 * Alter the default version mismatch behavior to throw an exception instead of write a message to System.err
* Ensure that DefaultListener is always the last listener notified (since it throws an exception)
* Update the checkVersion documentation to more clearly describe the scenarios for which version mismatches are detected
2014-06-03 22:10:55 -05:00
Terence Parr feb86e8d9b track context-sensitive phrases in ambiguity reporting. 2014-06-03 19:20:16 -07:00
Sam Harwell 80125d661e * Redefine checkVersion as version mismatch detection instead of a compatibility check
* Update notification behavior to notify callback listeners instead of throwing an exception
* Remove the distinction between regular and "extended" semantics
2014-06-03 18:31:52 -05:00
Terence Parr 4e84fa2824 tweak to comment 2014-06-02 21:30:12 -07:00
Terence Parr a87d3acedd Merge pull request #597 from parrt/track-all-preds
Track all preds
2014-06-02 21:21:36 -07:00
Sam Harwell e4e1cb1845 Updated the documentation and improved the flexibility for future use of RuntimeMetaData.checkVersion 2014-06-02 23:06:58 -05:00
Sam Harwell 2a25ec2fa4 Use tabs, add missing license header 2014-06-02 22:24:05 -05:00
Sam Harwell 5e93d5f7b7 Avoid creating PredicateEvalInfo events for precedence predicates 2014-06-02 20:59:31 -05:00
Sam Harwell 244c8ee0c7 Updated documentation 2014-06-02 20:59:11 -05:00
Terence Parr 3bab338ba4 change comment to be accurate with code. 2014-06-02 18:39:45 -07:00
Sam Harwell 8e6820ac60 Tweaks 2014-06-02 20:22:42 -05:00
Terence Parr 982b70fbfd reportAttemptingFullContext didn't get conflicting alts unless decision had predicates. 2014-06-02 18:02:17 -07:00
Terence Parr dba3aaf740 track all predicates, make new method that is called for all preds. 2014-06-02 19:50:39 -05:00
Sam Harwell be16c71e56 Merge pull request #583 from sharwell/atn-profiler
Atn profiler
2014-06-01 22:30:39 -05:00
Terence Parr 68b186e77d Add utility methods and track token indexes through the left recursive rule transformation to allow external tools to associate ATN states and transitions with original locations in the grammar source file 2014-06-01 22:30:33 -05:00
Terence Parr d5aba146f0 Remove unnecessary call to input.index() 2014-06-01 22:28:57 -05:00
Terence Parr fb49d7c6a2 initial profiler 2014-06-01 22:15:12 -05:00
Terence Parr aa9bceaa7b Merge pull request #587 from sharwell/getoperands
Add the SemanticContext.Operator interface
2014-05-31 16:48:54 -07:00
Sam Harwell 31f3c2eb5b Add the SemanticContext.Operator base class to provide consistent API access to the operands of AND and OR contexts 2014-05-31 18:48:38 -05:00
Terence Parr 63fb71cc9f Merge pull request #586 from sharwell/getalts
Add utility method ATNConfigSet.getAlts
2014-05-31 16:48:29 -07:00
Sam Harwell 27ce016d3d Add utility method ATNConfigSet.getAlts 2014-05-31 18:20:06 -05:00
Sam Harwell ab7319ab15 Add ATNSimulator.clearDFA, and implement for LexerATNSimulator and ParserATNSimulator 2014-05-31 18:11:38 -05:00
Terence Parr 6500b26c14 get good message 2014-05-28 18:01:05 -07:00
Terence Parr 2d8ffee5e2 damn intellij/git always loses changes but just with antlr repo. DAMN! commiting last files manually 2014-05-28 17:56:43 -07:00
Terence Parr a3d4ba53a3 add tool-template and generatedcode-runtime version compatibility check. Target authors add a VERSION template and supply a RuntimeMetaData.checkVersion() method. 2014-05-19 17:25:01 -07:00
Sam Harwell 7e2bf4a2d5 [maven-release-plugin] prepare for next development iteration 2014-04-06 21:19:40 -05:00
Sam Harwell 736a5f5905 [maven-release-plugin] prepare release 4.2.2 2014-04-06 21:18:12 -05:00
Sam Harwell faf011ce8a Updated documentation for ParserATNSimulator.getConflictingAlts (fixes #528) 2014-04-06 16:51:34 -05:00
Sam Harwell d209bd0ef0 Remove comment that was only meant for testing 2014-04-06 16:34:32 -05:00
Sam Harwell b175d7b223 Merge pull request #537 from sharwell/multiple-eof
Multiple EOF
2014-04-06 16:29:24 -05:00
Sam Harwell fb66202820 Improved documentation for Transition.isEpsilon 2014-04-06 16:27:09 -05:00
Sam Harwell f233f6eaae Fix build warning due to use of generics 2014-04-06 16:27:09 -05:00
Sam Harwell f9e9a6ab38 Fix handling of multiple EOF symbols in parser rules 2014-04-06 16:25:14 -05:00
Terence Parr 14f446f3f8 Update the comment to reflect the new method I put it on. 2014-04-02 09:56:19 -07:00
Terence Parr da9186ed63 Merge pull request #134 from parrt/eval-preds-when-delaying-errors
When delaying error reporting because prediction escapes the decision en...
2014-04-02 09:41:09 -07:00
Terence Parr 8f000d273d If there is no syntactically and semantically valid alternative that reaches the end of the decision entry rule upon no viable alt, choose the first alternative that is syntactically valid but semantically invalid. Refactor into separate method for clarity. 2014-04-02 09:38:26 -07:00
Terence Parr 9652d0059c add Sam's comment. 2014-04-02 08:26:38 -07:00
Sam Harwell bbbf5e34db Treat EOF transitions in the ATN as epsilon transitions after the first EOF transition is traversed 2014-04-01 21:03:07 -05:00
Terence Parr 69d4b423e1 When delaying error reporting because prediction escapes the decision entry rule, we should evaluate predicates to turn off any configurations that are invalid semantically. After that, we can collect the list of alternatives that are satisfied with the input thus far and then choose the minimum as before. Fixes #529 2014-04-01 16:49:30 -07:00
Sam Harwell c0d158294a Implement hashCode, equals, and toString for Pair and Triple 2014-03-29 13:19:40 -05:00
Sam Harwell 5be18445cd [maven-release-plugin] prepare for next development iteration 2014-03-25 10:57:46 -05:00
Sam Harwell 943aaa5d24 [maven-release-plugin] prepare release 4.2.1 2014-03-25 10:57:44 -05:00
Terence Parr dcd338cfec Merge pull request #504 from sharwell/update-xpathlexer
Update xpathlexer
2014-03-23 11:26:35 -07:00
Terence Parr e66f663618 Merge pull request #503 from sharwell/fix-469
Fix 469
2014-03-23 11:25:59 -07:00
Sam Harwell 336a1197e8 Add a comment describing a possible future optimization to applyPrecedenceFilter 2014-03-23 11:34:38 -05:00
Sam Harwell 10558a7bea Make sure to consider context for the SLL precedence filter (fixes #509) 2014-03-23 11:34:37 -05:00
Sam Harwell 470863dcd0 Update the runtime to build XPathLexer with ANTLR 4.2 2014-03-20 09:32:42 -05:00
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