From 3378be9c79f68da8b12fbdd8709eafe11892c17d Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Wed, 18 Jun 2014 19:35:30 -0500 Subject: [PATCH 1/3] Update all version numbers for consistency prior to the 4.3 release --- antlr4-maven-plugin/pom.xml | 2 +- build.xml | 2 +- pom.xml | 2 +- runtime/Java/pom.xml | 2 +- runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java | 7 +------ runtime/JavaAnnotations/pom.xml | 2 +- tool/pom.xml | 2 +- 7 files changed, 7 insertions(+), 12 deletions(-) diff --git a/antlr4-maven-plugin/pom.xml b/antlr4-maven-plugin/pom.xml index 19cab077e..514fef5cf 100644 --- a/antlr4-maven-plugin/pom.xml +++ b/antlr4-maven-plugin/pom.xml @@ -40,7 +40,7 @@ org.antlr antlr4-master - 4.2.3-SNAPSHOT + 4.3-SNAPSHOT antlr4-maven-plugin diff --git a/build.xml b/build.xml index 8950fbdb4..701e744d7 100644 --- a/build.xml +++ b/build.xml @@ -32,7 +32,7 @@ - + diff --git a/pom.xml b/pom.xml index 26387db05..6e2f3f89f 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 4.0.0 org.antlr antlr4-master - 4.2.3-SNAPSHOT + 4.3-SNAPSHOT pom ANTLR 4 diff --git a/runtime/Java/pom.xml b/runtime/Java/pom.xml index ed8f34b1e..cd3965e78 100644 --- a/runtime/Java/pom.xml +++ b/runtime/Java/pom.xml @@ -5,7 +5,7 @@ org.antlr antlr4-master - 4.2.3-SNAPSHOT + 4.3-SNAPSHOT ../.. diff --git a/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java b/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java index 8d6a1e6c1..ea7b08699 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java +++ b/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java @@ -71,13 +71,8 @@ public class RuntimeMetaData { * This compile-time constant value allows generated parsers and other * libraries to include a literal reference to the version of the ANTLR 4 * runtime library the code was compiled against.

- * - *

- * During development (between releases), this value contains the - * expected next release version. For official releases, the value - * will be the actual published version of the library.

*/ - public static final String VERSION = "4.3"; + public static final String VERSION = "4.3-SNAPSHOT"; /** * This class provides detailed information about a mismatch between the diff --git a/runtime/JavaAnnotations/pom.xml b/runtime/JavaAnnotations/pom.xml index 05b833811..aba754bc6 100644 --- a/runtime/JavaAnnotations/pom.xml +++ b/runtime/JavaAnnotations/pom.xml @@ -5,7 +5,7 @@ org.antlr antlr4-master - 4.2.3-SNAPSHOT + 4.3-SNAPSHOT ../.. diff --git a/tool/pom.xml b/tool/pom.xml index 5f392268c..81a54f3c1 100644 --- a/tool/pom.xml +++ b/tool/pom.xml @@ -5,7 +5,7 @@ org.antlr antlr4-master - 4.2.3-SNAPSHOT + 4.3-SNAPSHOT antlr4 From a72058bc67ca326d7c6f552a888c7e6665a7f9dd Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Wed, 18 Jun 2014 19:36:26 -0500 Subject: [PATCH 2/3] Update dependency versions --- runtime/Java/pom.xml | 2 +- tool/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime/Java/pom.xml b/runtime/Java/pom.xml index cd3965e78..eaede9779 100644 --- a/runtime/Java/pom.xml +++ b/runtime/Java/pom.xml @@ -104,7 +104,7 @@ org.antlr antlr4-maven-plugin - 4.2 + 4.2.2 src diff --git a/tool/pom.xml b/tool/pom.xml index 81a54f3c1..205d69897 100644 --- a/tool/pom.xml +++ b/tool/pom.xml @@ -17,7 +17,7 @@ junit junit - 4.10 + 4.11 test From bbac283ba238908a64bc1a81ce6f95ab065a004e Mon Sep 17 00:00:00 2001 From: Sam Harwell Date: Wed, 18 Jun 2014 19:48:07 -0500 Subject: [PATCH 3/3] Add @since documentation to key new exposed API types/methods --- runtime/Java/src/org/antlr/v4/runtime/Parser.java | 3 +++ runtime/Java/src/org/antlr/v4/runtime/Recognizer.java | 2 ++ .../src/org/antlr/v4/runtime/RuntimeMetaData.java | 2 ++ .../src/org/antlr/v4/runtime/atn/ATNConfigSet.java | 2 ++ .../src/org/antlr/v4/runtime/atn/ATNSimulator.java | 2 ++ .../src/org/antlr/v4/runtime/atn/AmbiguityInfo.java | 2 ++ .../antlr/v4/runtime/atn/ContextSensitivityInfo.java | 2 ++ .../org/antlr/v4/runtime/atn/DecisionEventInfo.java | 2 ++ .../src/org/antlr/v4/runtime/atn/DecisionInfo.java | 2 ++ .../Java/src/org/antlr/v4/runtime/atn/ErrorInfo.java | 2 ++ .../org/antlr/v4/runtime/atn/LookaheadEventInfo.java | 2 ++ .../Java/src/org/antlr/v4/runtime/atn/ParseInfo.java | 2 ++ .../org/antlr/v4/runtime/atn/ParserATNSimulator.java | 5 +++++ .../org/antlr/v4/runtime/atn/PredicateEvalInfo.java | 2 ++ .../antlr/v4/runtime/atn/ProfilingATNSimulator.java | 3 +++ .../src/org/antlr/v4/runtime/atn/SemanticContext.java | 4 ++++ tool/src/org/antlr/v4/codegen/Target.java | 11 +++++++++++ 17 files changed, 50 insertions(+) diff --git a/runtime/Java/src/org/antlr/v4/runtime/Parser.java b/runtime/Java/src/org/antlr/v4/runtime/Parser.java index a2f9e2f9d..9c37aade7 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/Parser.java +++ b/runtime/Java/src/org/antlr/v4/runtime/Parser.java @@ -892,6 +892,9 @@ public abstract class Parser extends Recognizer { return null; } + /** + * @since 4.3 + */ public void setProfile(boolean profile) { ParserATNSimulator interp = getInterpreter(); if ( profile ) { diff --git a/runtime/Java/src/org/antlr/v4/runtime/Recognizer.java b/runtime/Java/src/org/antlr/v4/runtime/Recognizer.java index a0bcd4e5b..a41b21e3b 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/Recognizer.java +++ b/runtime/Java/src/org/antlr/v4/runtime/Recognizer.java @@ -160,6 +160,8 @@ public abstract class Recognizer { /** If profiling during the parse/lex, this will return DecisionInfo records * for each decision in recognizer in a ParseInfo object. + * + * @since 4.3 */ public ParseInfo getParseInfo() { return null; diff --git a/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java b/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java index ea7b08699..8ae6ee3d0 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java +++ b/runtime/Java/src/org/antlr/v4/runtime/RuntimeMetaData.java @@ -61,6 +61,8 @@ import java.util.concurrent.CopyOnWriteArraySet; * be removed by calling {@link #removeListener} for * {@link DefaultListener#INSTANCE} or {@link #clearListeners}. If required, it * may be re-registered by calling {@link #addListener}.

+ * + * @since 4.3 */ public class RuntimeMetaData { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ATNConfigSet.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ATNConfigSet.java index 7f713a854..6cdadcfee 100755 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ATNConfigSet.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ATNConfigSet.java @@ -199,6 +199,8 @@ public class ATNConfigSet implements Set { * set. * * @return the set of represented alternatives in this configuration set + * + * @since 4.3 */ @NotNull public BitSet getAlts() { diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ATNSimulator.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ATNSimulator.java index 091247449..a7ded3a58 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ATNSimulator.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ATNSimulator.java @@ -108,6 +108,8 @@ public abstract class ATNSimulator { * * @throws UnsupportedOperationException if the current instance does not * support clearing the DFA. + * + * @since 4.3 */ public void clearDFA() { throw new UnsupportedOperationException("This ATN simulator does not support clearing the DFA."); diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/AmbiguityInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/AmbiguityInfo.java index 86f089b0d..1f4d2a521 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/AmbiguityInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/AmbiguityInfo.java @@ -60,6 +60,8 @@ import org.antlr.v4.runtime.misc.NotNull; * * @see ParserATNSimulator#reportAmbiguity * @see ANTLRErrorListener#reportAmbiguity + * + * @since 4.3 */ public class AmbiguityInfo extends DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ContextSensitivityInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ContextSensitivityInfo.java index 85ca50d5d..ce37e170c 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ContextSensitivityInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ContextSensitivityInfo.java @@ -49,6 +49,8 @@ import org.antlr.v4.runtime.misc.NotNull; * * @see ParserATNSimulator#reportContextSensitivity * @see ANTLRErrorListener#reportContextSensitivity + * + * @since 4.3 */ public class ContextSensitivityInfo extends DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionEventInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionEventInfo.java index fac50365f..6cafdf247 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionEventInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionEventInfo.java @@ -37,6 +37,8 @@ import org.antlr.v4.runtime.misc.Nullable; /** * This is the base class for gathering detailed information about prediction * events which occur during parsing. + * + * @since 4.3 */ public class DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionInfo.java index 09dd0163d..48c5904d0 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/DecisionInfo.java @@ -43,6 +43,8 @@ import java.util.List; * operations are started). For best results, gather and use aggregate * statistics from a large sample of inputs representing the inputs expected in * production before using the results to make changes in the grammar.

+ * + * @since 4.3 */ public class DecisionInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ErrorInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ErrorInfo.java index 7500098a9..5f2c852e7 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ErrorInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ErrorInfo.java @@ -45,6 +45,8 @@ import org.antlr.v4.runtime.misc.NotNull; * * @see Parser#notifyErrorListeners(Token, String, RecognitionException) * @see ANTLRErrorListener#syntaxError + * + * @since 4.3 */ public class ErrorInfo extends DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/LookaheadEventInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/LookaheadEventInfo.java index 634d34bd9..f0aa67cc5 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/LookaheadEventInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/LookaheadEventInfo.java @@ -37,6 +37,8 @@ import org.antlr.v4.runtime.misc.Nullable; /** * This class represents profiling event information for tracking the lookahead * depth required in order to make a prediction. + * + * @since 4.3 */ public class LookaheadEventInfo extends DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ParseInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ParseInfo.java index 31b771ccc..aadee7b74 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ParseInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ParseInfo.java @@ -39,6 +39,8 @@ import java.util.List; /** * This class provides access to specific and aggregate statistics gathered * during profiling of a parser. + * + * @since 4.3 */ public class ParseInfo { protected final ProfilingATNSimulator atnSimulator; diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ParserATNSimulator.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ParserATNSimulator.java index 977ae9da4..a363ffcbc 100755 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ParserATNSimulator.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ParserATNSimulator.java @@ -1345,6 +1345,8 @@ public class ParserATNSimulator extends ATNSimulator { * @param fullCtx {@code true} if the evaluation is occurring during LL * prediction; otherwise, {@code false} if the evaluation is occurring * during SLL prediction + * + * @since 4.3 */ protected boolean evalSemanticContext(@NotNull SemanticContext pred, ParserRuleContext parserCallStack, int alt, boolean fullCtx) { return pred.eval(parser, parserCallStack); @@ -1922,6 +1924,9 @@ public class ParserATNSimulator extends ATNSimulator { return mode; } + /** + * @since 4.3 + */ public Parser getParser() { return parser; } diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/PredicateEvalInfo.java b/runtime/Java/src/org/antlr/v4/runtime/atn/PredicateEvalInfo.java index 6fbac2c90..1de1819be 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/PredicateEvalInfo.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/PredicateEvalInfo.java @@ -41,6 +41,8 @@ import org.antlr.v4.runtime.misc.NotNull; * evaluations which occur during prediction. * * @see ParserATNSimulator#evalSemanticContext + * + * @since 4.3 */ public class PredicateEvalInfo extends DecisionEventInfo { /** diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/ProfilingATNSimulator.java b/runtime/Java/src/org/antlr/v4/runtime/atn/ProfilingATNSimulator.java index 5a9acc794..38120661e 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/ProfilingATNSimulator.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/ProfilingATNSimulator.java @@ -40,6 +40,9 @@ import org.antlr.v4.runtime.misc.Nullable; import java.util.BitSet; +/** + * @since 4.3 + */ public class ProfilingATNSimulator extends ParserATNSimulator { protected final DecisionInfo[] decisions; protected int numDecisions; diff --git a/runtime/Java/src/org/antlr/v4/runtime/atn/SemanticContext.java b/runtime/Java/src/org/antlr/v4/runtime/atn/SemanticContext.java index 31141841b..8287753fa 100644 --- a/runtime/Java/src/org/antlr/v4/runtime/atn/SemanticContext.java +++ b/runtime/Java/src/org/antlr/v4/runtime/atn/SemanticContext.java @@ -207,6 +207,8 @@ public abstract class SemanticContext { /** * This is the base class for semantic context "operators", which operate on * a collection of semantic context "operands". + * + * @since 4.3 */ public static abstract class Operator extends SemanticContext { /** @@ -214,6 +216,8 @@ public abstract class SemanticContext { * * @return a collection of {@link SemanticContext} operands for the * operator. + * + * @since 4.3 */ @NotNull public abstract Collection getOperands(); diff --git a/tool/src/org/antlr/v4/codegen/Target.java b/tool/src/org/antlr/v4/codegen/Target.java index ae1930c75..6344a7f12 100644 --- a/tool/src/org/antlr/v4/codegen/Target.java +++ b/tool/src/org/antlr/v4/codegen/Target.java @@ -93,6 +93,8 @@ public abstract class Target { * between a template called VERSION. This value is checked against Tool.VERSION during load of templates. * * This additional method forces all targets 4.3 and beyond to add this method. + * + * @since 4.3 */ public abstract String getVersion(); @@ -376,14 +378,23 @@ public abstract class Target { return result; } + /** + * @since 4.3 + */ public boolean wantsBaseListener() { return true; } + /** + * @since 4.3 + */ public boolean wantsBaseVisitor() { return true; } + /** + * @since 4.3 + */ public boolean supportsOverloadedMethods() { return true; }