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;
}