diff options
author | Yigit Boyar <yboyar@google.com> | 2016-04-07 15:16:07 -0700 |
---|---|---|
committer | Yigit Boyar <yboyar@google.com> | 2016-04-11 12:26:49 -0700 |
commit | 15b6682cf3505b117329e2190967c92a89b179e9 (patch) | |
tree | ff1c4e3d790450da0c86fb616365d7707cd49653 | |
parent | bfec8f58feb977598336a3d4ed86dcd9dd372b98 (diff) | |
download | data-binding-15b6682cf3505b117329e2190967c92a89b179e9.tar.gz |
Move to org.antlr from tunnelvision
We were using a version of antlr that is published by
tunnelvision which works fine but this becomes a problem
when another gradle plugin wants to depend on antlr as
well. It is best if we depend on the original one to
avoid conflicts with other libs.
Bug: 27175207
Change-Id: I0a87f9902361ace5dc6d03d838e2ad431c844de8
25 files changed, 1373 insertions, 1604 deletions
diff --git a/build.gradle b/build.gradle index 45e1623e..c3ce95a3 100644 --- a/build.gradle +++ b/build.gradle @@ -241,8 +241,7 @@ def fullJar(project) { // input is our inputLibrary zipfileset(src: inputLibrary) // rule to repackage antlr to new package - rule pattern: 'org.antlr.**', result: 'com.google.repacked.antlr.@1' - rule pattern: 'com.tunnelvisionlabs.**', result: 'com.google.repacked.tunnelvision.@1' + rule pattern: 'org.antlr.**', result: 'com.google.repacked.org.antlr.@1' rule pattern: 'org.abego.treelayout.**', result: 'com.google.repacked.treelayout.@1' // rule to repackage commons rule pattern: 'org.apache.**', result: 'com.google.repacked.apache.@1' diff --git a/compilationTests/src/test/java/android/databinding/compilationTest/MultiLayoutVerificationTest.java b/compilationTests/src/test/java/android/databinding/compilationTest/MultiLayoutVerificationTest.java index bbf86e7a..2c138687 100644 --- a/compilationTests/src/test/java/android/databinding/compilationTest/MultiLayoutVerificationTest.java +++ b/compilationTests/src/test/java/android/databinding/compilationTest/MultiLayoutVerificationTest.java @@ -208,13 +208,15 @@ public class MultiLayoutVerificationTest extends BaseCompilationTest { CompilationResult result = runGradle("assembleDebug"); assertNotEquals(result.output, 0, result.resultCode); List<ScopedException> exceptions = result.getBindingExceptions(); - assertEquals(result.error, 2, exceptions.size()); boolean foundNormal = false; boolean foundLandscape = false; for (ScopedException exception : exceptions) { ScopedErrorReport report = exception.getScopedErrorReport(); assertNotNull(report); + if (exception.getMessage().startsWith("Cannot find the setter")) { + continue; + } File file = new File(report.getFilePath()); assertTrue(file.exists()); assertEquals(result.error, 1, report.getLocations().size()); diff --git a/compiler/build.gradle b/compiler/build.gradle index 8a9e9919..0b2c6b25 100644 --- a/compiler/build.gradle +++ b/compiler/build.gradle @@ -16,8 +16,8 @@ apply plugin: 'java' apply plugin: 'kotlin' -sourceCompatibility = dataBindingConfig.javaTargetCompatibility -targetCompatibility = dataBindingConfig.javaSourceCompatibility +sourceCompatibility = dataBindingConfig.compilerJavaTargetCompatibility +targetCompatibility = dataBindingConfig.compilerJavaSourceCompatibility sourceSets { main.java.srcDirs += 'src/main/kotlin' @@ -38,7 +38,7 @@ dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compile 'commons-io:commons-io:2.4' compile 'commons-codec:commons-codec:1.10' - compile 'com.tunnelvisionlabs:antlr4:4.5' + compile 'org.antlr:antlr4:4.5.3' compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3' testCompile 'junit:junit:4.12' } diff --git a/compiler/src/main/java/android/databinding/tool/ExpressionParser.java b/compiler/src/main/java/android/databinding/tool/ExpressionParser.java index 5468c936..8deebc4d 100644 --- a/compiler/src/main/java/android/databinding/tool/ExpressionParser.java +++ b/compiler/src/main/java/android/databinding/tool/ExpressionParser.java @@ -23,7 +23,6 @@ import org.antlr.v4.runtime.ParserRuleContext; import org.antlr.v4.runtime.RecognitionException; import org.antlr.v4.runtime.Recognizer; import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.Nullable; import org.antlr.v4.runtime.tree.ErrorNode; import org.antlr.v4.runtime.tree.ParseTreeListener; import org.antlr.v4.runtime.tree.TerminalNode; @@ -37,6 +36,8 @@ import android.databinding.tool.store.Location; import android.databinding.tool.util.L; import android.databinding.tool.util.Preconditions; +import com.android.annotations.Nullable; + import java.util.ArrayList; import java.util.List; @@ -56,9 +57,8 @@ public class ExpressionParser { final BindingExpressionParser parser = new BindingExpressionParser(tokenStream); parser.addErrorListener(new BaseErrorListener() { @Override - public <T extends Token> void syntaxError(Recognizer<T, ?> recognizer, - @Nullable T offendingSymbol, int line, int charPositionInLine, String msg, - @Nullable RecognitionException e) { + public void syntaxError(Recognizer<?, ?> recognizer, Object offendingSymbol, int line, + int charPositionInLine, String msg, RecognitionException e) { L.e(ErrorMessages.SYNTAX_ERROR, msg); } }); diff --git a/compiler/src/main/java/android/databinding/tool/ExpressionVisitor.java b/compiler/src/main/java/android/databinding/tool/ExpressionVisitor.java index f35b1e2b..87426c0f 100644 --- a/compiler/src/main/java/android/databinding/tool/ExpressionVisitor.java +++ b/compiler/src/main/java/android/databinding/tool/ExpressionVisitor.java @@ -31,10 +31,10 @@ import android.databinding.tool.reflection.ModelAnalyzer; import android.databinding.tool.reflection.ModelClass; import android.databinding.tool.util.Preconditions; +import com.android.annotations.NonNull; import com.google.common.base.Objects; import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ParseTree; import org.antlr.v4.runtime.tree.ParseTreeListener; import org.antlr.v4.runtime.tree.TerminalNode; @@ -43,16 +43,16 @@ import java.util.ArrayDeque; import java.util.ArrayList; import java.util.List; -public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { +class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { private ExprModel mModel; private ParseTreeListener mParseTreeListener; private ArrayDeque<ExprModel> mModelStack = new ArrayDeque<ExprModel>(); - public ExpressionVisitor(ExprModel model) { + ExpressionVisitor(ExprModel model) { mModel = model; } - public void setParseTreeListener(ParseTreeListener parseTreeListener) { + void setParseTreeListener(ParseTreeListener parseTreeListener) { mParseTreeListener = parseTreeListener; } @@ -82,7 +82,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx) { + public Expr visitRootLambda(@NonNull BindingExpressionParser.RootLambdaContext ctx) { try { onEnter(ctx); CallbackExprModel callbackModel = new CallbackExprModel(mModel); @@ -100,7 +100,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { @Override public Expr visitSingleLambdaParameter( - @NotNull BindingExpressionParser.SingleLambdaParameterContext ctx) { + @NonNull BindingExpressionParser.SingleLambdaParameterContext ctx) { try { onEnter(ctx); Preconditions.check(mModel instanceof CallbackExprModel, "Lambdas can only be used in" @@ -115,7 +115,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { @Override public Expr visitLambdaParameterList( - @NotNull BindingExpressionParser.LambdaParameterListContext ctx) { + @NonNull BindingExpressionParser.LambdaParameterListContext ctx) { try { onEnter(ctx); Preconditions.check(mModel instanceof CallbackExprModel, "Lambdas can only be used in" @@ -136,7 +136,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx) { + public Expr visitStringLiteral(@NonNull BindingExpressionParser.StringLiteralContext ctx) { try { onEnter(ctx); final String javaString; @@ -155,7 +155,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx) { + public Expr visitRootExpr(@NonNull BindingExpressionParser.RootExprContext ctx) { try { onEnter(ctx); // TODO handle defaults @@ -170,7 +170,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitGrouping(@NotNull BindingExpressionParser.GroupingContext ctx) { + public Expr visitGrouping(@NonNull BindingExpressionParser.GroupingContext ctx) { try { onEnter(ctx); Preconditions.check(ctx.children.size() == 3, "Grouping expression should have" @@ -182,7 +182,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitDotOp(@NotNull BindingExpressionParser.DotOpContext ctx) { + public Expr visitDotOp(@NonNull BindingExpressionParser.DotOpContext ctx) { try { onEnter(ctx); ModelAnalyzer analyzer = ModelAnalyzer.getInstance(); @@ -202,7 +202,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx) { + public Expr visitFunctionRef(@NonNull BindingExpressionParser.FunctionRefContext ctx) { try { onEnter(ctx); return mModel.methodReference(ctx.expression().accept(this), @@ -213,7 +213,8 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx) { + public Expr visitQuestionQuestionOp( + @NonNull BindingExpressionParser.QuestionQuestionOpContext ctx) { try { onEnter(ctx); final Expr left = ctx.left.accept(this); @@ -225,9 +226,9 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitTerminal(@NotNull TerminalNode node) { + public Expr visitTerminal(@NonNull TerminalNode node) { try { - onEnter((ParserRuleContext) node.getParent().getRuleContext()); + onEnter((ParserRuleContext) node.getParent()); final int type = node.getSymbol().getType(); Class classType; switch (type) { @@ -259,12 +260,12 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } return mModel.symbol(node.getText(), classType); } finally { - onExit((ParserRuleContext) node.getParent().getRuleContext()); + onExit((ParserRuleContext) node.getParent()); } } @Override - public Expr visitComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx) { + public Expr visitComparisonOp(@NonNull BindingExpressionParser.ComparisonOpContext ctx) { try { onEnter(ctx); return mModel.comparison(ctx.op.getText(), ctx.left.accept(this), ctx.right.accept(this)); @@ -274,7 +275,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx) { + public Expr visitIdentifier(@NonNull BindingExpressionParser.IdentifierContext ctx) { try { onEnter(ctx); return mModel.identifier(ctx.getText()); @@ -284,7 +285,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx) { + public Expr visitTernaryOp(@NonNull BindingExpressionParser.TernaryOpContext ctx) { try { onEnter(ctx); return mModel.ternary(ctx.left.accept(this), ctx.iftrue.accept(this), @@ -297,7 +298,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { @Override public Expr visitMethodInvocation( - @NotNull BindingExpressionParser.MethodInvocationContext ctx) { + @NonNull BindingExpressionParser.MethodInvocationContext ctx) { try { onEnter(ctx); List<Expr> args = new ArrayList<Expr>(); @@ -317,7 +318,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitMathOp(@NotNull BindingExpressionParser.MathOpContext ctx) { + public Expr visitMathOp(@NonNull BindingExpressionParser.MathOpContext ctx) { try { onEnter(ctx); return mModel.math(ctx.left.accept(this), ctx.op.getText(), ctx.right.accept(this)); @@ -327,7 +328,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitAndOrOp(@NotNull AndOrOpContext ctx) { + public Expr visitAndOrOp(@NonNull AndOrOpContext ctx) { try { onEnter(ctx); return mModel.logical(ctx.left.accept(this), ctx.op.getText(), ctx.right.accept(this)); @@ -337,7 +338,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitBinaryOp(@NotNull BinaryOpContext ctx) { + public Expr visitBinaryOp(@NonNull BinaryOpContext ctx) { try { onEnter(ctx); return mModel.math(ctx.left.accept(this), ctx.op.getText(), ctx.right.accept(this)); @@ -347,7 +348,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitBitShiftOp(@NotNull BitShiftOpContext ctx) { + public Expr visitBitShiftOp(@NonNull BitShiftOpContext ctx) { try { onEnter(ctx); return mModel.bitshift(ctx.left.accept(this), ctx.op.getText(), ctx.right.accept(this)); @@ -357,7 +358,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitInstanceOfOp(@NotNull InstanceOfOpContext ctx) { + public Expr visitInstanceOfOp(@NonNull InstanceOfOpContext ctx) { try { onEnter(ctx); return mModel.instanceOfOp(ctx.expression().accept(this), ctx.type().getText()); @@ -367,7 +368,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitUnaryOp(@NotNull UnaryOpContext ctx) { + public Expr visitUnaryOp(@NonNull UnaryOpContext ctx) { try { onEnter(ctx); return mModel.unary(ctx.op.getText(), ctx.expression().accept(this)); @@ -377,7 +378,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitResources(@NotNull BindingExpressionParser.ResourcesContext ctx) { + public Expr visitResources(@NonNull BindingExpressionParser.ResourcesContext ctx) { try { onEnter(ctx); final List<Expr> args = new ArrayList<Expr>(); @@ -404,7 +405,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx) { + public Expr visitBracketOp(@NonNull BindingExpressionParser.BracketOpContext ctx) { try { onEnter(ctx); return mModel.bracketExpr(visit(ctx.expression(0)), visit(ctx.expression(1))); @@ -414,7 +415,7 @@ public class ExpressionVisitor extends BindingExpressionBaseVisitor<Expr> { } @Override - public Expr visitCastOp(@NotNull BindingExpressionParser.CastOpContext ctx) { + public Expr visitCastOp(@NonNull BindingExpressionParser.CastOpContext ctx) { try { onEnter(ctx); return mModel.castExpr(ctx.type().getText(), visit(ctx.expression())); diff --git a/compiler/src/main/java/android/databinding/tool/LayoutBinder.java b/compiler/src/main/java/android/databinding/tool/LayoutBinder.java index 7969854a..c7704682 100644 --- a/compiler/src/main/java/android/databinding/tool/LayoutBinder.java +++ b/compiler/src/main/java/android/databinding/tool/LayoutBinder.java @@ -30,7 +30,7 @@ import android.databinding.tool.util.Preconditions; import android.databinding.tool.writer.LayoutBinderWriter; import android.databinding.tool.writer.LayoutBinderWriterKt; -import org.antlr.v4.runtime.misc.Nullable; +import com.android.annotations.Nullable; import java.util.ArrayList; import java.util.Collections; diff --git a/compilerCommon/build.gradle b/compilerCommon/build.gradle index 91ce05db..0f260e48 100644 --- a/compilerCommon/build.gradle +++ b/compilerCommon/build.gradle @@ -16,9 +16,6 @@ apply plugin: 'java' -sourceCompatibility = dataBindingConfig.javaSourceCompatibility -targetCompatibility = dataBindingConfig.javaTargetCompatibility - sourceSets { main { java { @@ -38,17 +35,26 @@ sourceSets { dependencies { testCompile 'junit:junit:4.12' compile project(':dataBinding:baseLibrary') - compile 'com.tunnelvisionlabs:antlr4:4.5' + compile 'org.antlr:antlr4:4.5.3' compile 'commons-io:commons-io:2.4' compile 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3' compile 'com.google.guava:guava:17.0' + compile 'com.android.tools:annotations:24.5.0' +} + +project.tasks.create(name : "generateXmlLexer", type : JavaExec) { + classpath configurations.runtime + main "org.antlr.v4.Tool" + workingDir projectDir + args "XMLLexer.g4", "-visitor", "-lib", projectDir.absolutePath, "-o", "src/main/xml-gen/android/databinding/parser", "-package", "android.databinding.parser" } project.tasks.create(name : "generateXmlParser", type : JavaExec) { classpath configurations.runtime main "org.antlr.v4.Tool" workingDir projectDir - args "XMLParser.g4", "-visitor", "-o", "src/main/java/android/databinding/parser", "-package", "android.databinding.parser", "-lib", "." + args "XMLParser.g4", "-visitor", "-lib", projectDir.absolutePath, "-o", "src/main/xml-gen/android/databinding/parser", "-package", "android.databinding.parser" + dependsOn "generateXmlLexer" } project.tasks.create(name : "generateGrammar", type : JavaExec) { diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseListener.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseListener.java index fc81eb83..c9ccebd6 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseListener.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseListener.java @@ -1,9 +1,7 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ErrorNode; import org.antlr.v4.runtime.tree.TerminalNode; @@ -18,582 +16,504 @@ public class BindingExpressionBaseListener implements BindingExpressionListener * * <p>The default implementation does nothing.</p> */ - @Override public void enterCastOp(@NotNull BindingExpressionParser.CastOpContext ctx) { } + @Override public void enterRootExpr(BindingExpressionParser.RootExprContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitCastOp(@NotNull BindingExpressionParser.CastOpContext ctx) { } - - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void enterComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx) { } - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void exitComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx) { } - - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void enterBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx) { } - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void exitBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx) { } - - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void enterUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx) { } + @Override public void exitRootExpr(BindingExpressionParser.RootExprContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx) { } - + @Override public void enterRootLambda(BindingExpressionParser.RootLambdaContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterResource(@NotNull BindingExpressionParser.ResourceContext ctx) { } + @Override public void exitRootLambda(BindingExpressionParser.RootLambdaContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitResource(@NotNull BindingExpressionParser.ResourceContext ctx) { } - + @Override public void enterDefaults(BindingExpressionParser.DefaultsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx) { } - /** - * {@inheritDoc} - * - * <p>The default implementation does nothing.</p> - */ - @Override public void exitQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx) { } - + @Override public void exitDefaults(BindingExpressionParser.DefaultsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterGrouping(@NotNull BindingExpressionParser.GroupingContext ctx) { } + @Override public void enterConstantValue(BindingExpressionParser.ConstantValueContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitGrouping(@NotNull BindingExpressionParser.GroupingContext ctx) { } - + @Override public void exitConstantValue(BindingExpressionParser.ConstantValueContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx) { } + @Override public void enterLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx) { } - + @Override public void exitLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx) { } + @Override public void enterSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx) { } - + @Override public void exitSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx) { } + @Override public void enterLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx) { } - + @Override public void exitLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx) { } + @Override public void enterInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx) { } - + @Override public void exitInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx) { } + @Override public void enterCastOp(BindingExpressionParser.CastOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx) { } - + @Override public void exitCastOp(BindingExpressionParser.CastOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterDotOp(@NotNull BindingExpressionParser.DotOpContext ctx) { } + @Override public void enterComparisonOp(BindingExpressionParser.ComparisonOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitDotOp(@NotNull BindingExpressionParser.DotOpContext ctx) { } - + @Override public void exitComparisonOp(BindingExpressionParser.ComparisonOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterMathOp(@NotNull BindingExpressionParser.MathOpContext ctx) { } + @Override public void enterUnaryOp(BindingExpressionParser.UnaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitMathOp(@NotNull BindingExpressionParser.MathOpContext ctx) { } - + @Override public void exitUnaryOp(BindingExpressionParser.UnaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx) { } + @Override public void enterBracketOp(BindingExpressionParser.BracketOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx) { } - + @Override public void exitBracketOp(BindingExpressionParser.BracketOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx) { } + @Override public void enterResource(BindingExpressionParser.ResourceContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx) { } - + @Override public void exitResource(BindingExpressionParser.ResourceContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx) { } + @Override public void enterQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx) { } - + @Override public void exitQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx) { } + @Override public void enterGrouping(BindingExpressionParser.GroupingContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx) { } - + @Override public void exitGrouping(BindingExpressionParser.GroupingContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx) { } + @Override public void enterMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx) { } - + @Override public void exitMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx) { } + @Override public void enterBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx) { } - + @Override public void exitBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx) { } + @Override public void enterAndOrOp(BindingExpressionParser.AndOrOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx) { } - + @Override public void exitAndOrOp(BindingExpressionParser.AndOrOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx) { } + @Override public void enterTernaryOp(BindingExpressionParser.TernaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx) { } - + @Override public void exitTernaryOp(BindingExpressionParser.TernaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx) { } + @Override public void enterPrimary(BindingExpressionParser.PrimaryContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx) { } - + @Override public void exitPrimary(BindingExpressionParser.PrimaryContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx) { } + @Override public void enterDotOp(BindingExpressionParser.DotOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx) { } - + @Override public void exitDotOp(BindingExpressionParser.DotOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx) { } + @Override public void enterMathOp(BindingExpressionParser.MathOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx) { } - + @Override public void exitMathOp(BindingExpressionParser.MathOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx) { } + @Override public void enterInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx) { } - + @Override public void exitInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx) { } + @Override public void enterBinaryOp(BindingExpressionParser.BinaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx) { } - + @Override public void exitBinaryOp(BindingExpressionParser.BinaryOpContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterExpression(@NotNull BindingExpressionParser.ExpressionContext ctx) { } + @Override public void enterFunctionRef(BindingExpressionParser.FunctionRefContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitExpression(@NotNull BindingExpressionParser.ExpressionContext ctx) { } - + @Override public void exitFunctionRef(BindingExpressionParser.FunctionRefContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx) { } + @Override public void enterClassExtraction(BindingExpressionParser.ClassExtractionContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx) { } - + @Override public void exitClassExtraction(BindingExpressionParser.ClassExtractionContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx) { } + @Override public void enterExpressionList(BindingExpressionParser.ExpressionListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx) { } - + @Override public void exitExpressionList(BindingExpressionParser.ExpressionListContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterLiteral(@NotNull BindingExpressionParser.LiteralContext ctx) { } + @Override public void enterLiteral(BindingExpressionParser.LiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitLiteral(@NotNull BindingExpressionParser.LiteralContext ctx) { } - + @Override public void exitLiteral(BindingExpressionParser.LiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx) { } + @Override public void enterIdentifier(BindingExpressionParser.IdentifierContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx) { } - + @Override public void exitIdentifier(BindingExpressionParser.IdentifierContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx) { } + @Override public void enterJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx) { } - + @Override public void exitJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx) { } + @Override public void enterStringLiteral(BindingExpressionParser.StringLiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx) { } - + @Override public void exitStringLiteral(BindingExpressionParser.StringLiteralContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx) { } + @Override public void enterExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx) { } - + @Override public void exitExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx) { } + @Override public void enterTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx) { } - + @Override public void exitTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterType(@NotNull BindingExpressionParser.TypeContext ctx) { } + @Override public void enterType(BindingExpressionParser.TypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitType(@NotNull BindingExpressionParser.TypeContext ctx) { } - + @Override public void exitType(BindingExpressionParser.TypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { } + @Override public void enterExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { } - + @Override public void exitExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx) { } + @Override public void enterArguments(BindingExpressionParser.ArgumentsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx) { } - + @Override public void exitArguments(BindingExpressionParser.ArgumentsContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { } + @Override public void enterClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { } - + @Override public void exitClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx) { } + @Override public void enterPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx) { } - + @Override public void exitPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterResources(@NotNull BindingExpressionParser.ResourcesContext ctx) { } + @Override public void enterResources(BindingExpressionParser.ResourcesContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitResources(@NotNull BindingExpressionParser.ResourcesContext ctx) { } - + @Override public void exitResources(BindingExpressionParser.ResourcesContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx) { } + @Override public void enterResourceParameters(BindingExpressionParser.ResourceParametersContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx) { } + @Override public void exitResourceParameters(BindingExpressionParser.ResourceParametersContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterEveryRule(@NotNull ParserRuleContext ctx) { } + @Override public void enterEveryRule(ParserRuleContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitEveryRule(@NotNull ParserRuleContext ctx) { } + @Override public void exitEveryRule(ParserRuleContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void visitTerminal(@NotNull TerminalNode node) { } + @Override public void visitTerminal(TerminalNode node) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void visitErrorNode(@NotNull ErrorNode node) { } + @Override public void visitErrorNode(ErrorNode node) { } }
\ No newline at end of file diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseVisitor.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseVisitor.java index 01a86e6c..5ba08bae 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseVisitor.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionBaseVisitor.java @@ -1,7 +1,5 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; /** @@ -9,351 +7,288 @@ import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; * which can be extended to create a visitor which only needs to handle a subset * of the available methods. * - * @param <Result> The return type of the visit operation. Use {@link Void} for + * @param <T> The return type of the visit operation. Use {@link Void} for * operations with no return type. */ -public class BindingExpressionBaseVisitor<Result> extends AbstractParseTreeVisitor<Result> implements BindingExpressionVisitor<Result> { +public class BindingExpressionBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements BindingExpressionVisitor<T> { /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitCastOp(@NotNull BindingExpressionParser.CastOpContext ctx) { return visitChildren(ctx); } - - /** - * {@inheritDoc} - * - * <p>The default implementation returns the result of calling - * {@link #visitChildren} on {@code ctx}.</p> - */ - @Override public Result visitComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx) { return visitChildren(ctx); } - - /** - * {@inheritDoc} - * - * <p>The default implementation returns the result of calling - * {@link #visitChildren} on {@code ctx}.</p> - */ - @Override public Result visitBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitRootExpr(BindingExpressionParser.RootExprContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitRootLambda(BindingExpressionParser.RootLambdaContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitResource(@NotNull BindingExpressionParser.ResourceContext ctx) { return visitChildren(ctx); } - + @Override public T visitDefaults(BindingExpressionParser.DefaultsContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitConstantValue(BindingExpressionParser.ConstantValueContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitGrouping(@NotNull BindingExpressionParser.GroupingContext ctx) { return visitChildren(ctx); } - + @Override public T visitLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx) { return visitChildren(ctx); } - + @Override public T visitSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx) { return visitChildren(ctx); } - - /** - * {@inheritDoc} - * - * <p>The default implementation returns the result of calling - * {@link #visitChildren} on {@code ctx}.</p> - */ - @Override public Result visitPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx) { return visitChildren(ctx); } - + @Override public T visitCastOp(BindingExpressionParser.CastOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitDotOp(@NotNull BindingExpressionParser.DotOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitComparisonOp(BindingExpressionParser.ComparisonOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitMathOp(@NotNull BindingExpressionParser.MathOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitUnaryOp(BindingExpressionParser.UnaryOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitBracketOp(BindingExpressionParser.BracketOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx) { return visitChildren(ctx); } - + @Override public T visitResource(BindingExpressionParser.ResourceContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx) { return visitChildren(ctx); } - + @Override public T visitQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx) { return visitChildren(ctx); } - + @Override public T visitGrouping(BindingExpressionParser.GroupingContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx) { return visitChildren(ctx); } - + @Override public T visitMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx) { return visitChildren(ctx); } - + @Override public T visitBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx) { return visitChildren(ctx); } - + @Override public T visitAndOrOp(BindingExpressionParser.AndOrOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx) { return visitChildren(ctx); } - + @Override public T visitTernaryOp(BindingExpressionParser.TernaryOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx) { return visitChildren(ctx); } - + @Override public T visitPrimary(BindingExpressionParser.PrimaryContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx) { return visitChildren(ctx); } - + @Override public T visitDotOp(BindingExpressionParser.DotOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx) { return visitChildren(ctx); } - + @Override public T visitMathOp(BindingExpressionParser.MathOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx) { return visitChildren(ctx); } - + @Override public T visitInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx) { return visitChildren(ctx); } - + @Override public T visitBinaryOp(BindingExpressionParser.BinaryOpContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitExpression(@NotNull BindingExpressionParser.ExpressionContext ctx) { return visitChildren(ctx); } - + @Override public T visitFunctionRef(BindingExpressionParser.FunctionRefContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx) { return visitChildren(ctx); } - + @Override public T visitClassExtraction(BindingExpressionParser.ClassExtractionContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx) { return visitChildren(ctx); } - + @Override public T visitExpressionList(BindingExpressionParser.ExpressionListContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitLiteral(@NotNull BindingExpressionParser.LiteralContext ctx) { return visitChildren(ctx); } - + @Override public T visitLiteral(BindingExpressionParser.LiteralContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx) { return visitChildren(ctx); } - + @Override public T visitIdentifier(BindingExpressionParser.IdentifierContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx) { return visitChildren(ctx); } - + @Override public T visitJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx) { return visitChildren(ctx); } - + @Override public T visitStringLiteral(BindingExpressionParser.StringLiteralContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx) { return visitChildren(ctx); } - + @Override public T visitExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx) { return visitChildren(ctx); } - + @Override public T visitTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitType(@NotNull BindingExpressionParser.TypeContext ctx) { return visitChildren(ctx); } - + @Override public T visitType(BindingExpressionParser.TypeContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { return visitChildren(ctx); } - + @Override public T visitExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx) { return visitChildren(ctx); } - + @Override public T visitArguments(BindingExpressionParser.ArgumentsContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { return visitChildren(ctx); } - + @Override public T visitClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx) { return visitChildren(ctx); } - + @Override public T visitPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitResources(@NotNull BindingExpressionParser.ResourcesContext ctx) { return visitChildren(ctx); } - + @Override public T visitResources(BindingExpressionParser.ResourcesContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx) { return visitChildren(ctx); } + @Override public T visitResourceParameters(BindingExpressionParser.ResourceParametersContext ctx) { return visitChildren(ctx); } }
\ No newline at end of file diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionLexer.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionLexer.java index 8b8bb8b9..d89c63e6 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionLexer.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionLexer.java @@ -1,4 +1,4 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; import org.antlr.v4.runtime.Lexer; import org.antlr.v4.runtime.CharStream; @@ -9,7 +9,13 @@ import org.antlr.v4.runtime.atn.*; import org.antlr.v4.runtime.dfa.DFA; import org.antlr.v4.runtime.misc.*; +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) public class BindingExpressionLexer extends Lexer { + static { RuntimeMetaData.checkVersion("4.5.3", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9, T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17, @@ -91,7 +97,7 @@ public class BindingExpressionLexer extends Lexer { } @Override - @NotNull + public Vocabulary getVocabulary() { return VOCABULARY; } @@ -99,7 +105,7 @@ public class BindingExpressionLexer extends Lexer { public BindingExpressionLexer(CharStream input) { super(input); - _interp = new LexerATNSimulator(this,_ATN); + _interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); } @Override @@ -115,13 +121,15 @@ public class BindingExpressionLexer extends Lexer { public String[] getModeNames() { return modeNames; } @Override + public ATN getATN() { return _ATN; } + + @Override public boolean sempred(RuleContext _localctx, int ruleIndex, int predIndex) { switch (ruleIndex) { case 95: - return JavaLetter_sempred(_localctx, predIndex); - + return JavaLetter_sempred((RuleContext)_localctx, predIndex); case 96: - return JavaLetterOrDigit_sempred(_localctx, predIndex); + return JavaLetterOrDigit_sempred((RuleContext)_localctx, predIndex); } return true; } @@ -129,7 +137,6 @@ public class BindingExpressionLexer extends Lexer { switch (predIndex) { case 0: return Character.isJavaIdentifierStart(_input.LA(-1)); - case 1: return Character.isJavaIdentifierStart(Character.toCodePoint((char)_input.LA(-2), (char)_input.LA(-1))); } @@ -139,7 +146,6 @@ public class BindingExpressionLexer extends Lexer { switch (predIndex) { case 2: return Character.isJavaIdentifierPart(_input.LA(-1)); - case 3: return Character.isJavaIdentifierPart(Character.toCodePoint((char)_input.LA(-2), (char)_input.LA(-1))); } @@ -147,7 +153,7 @@ public class BindingExpressionLexer extends Lexer { } public static final String _serializedATN = - "\3\uaf6f\u8320\u479d\ub75c\u4880\u1605\u191c\uab37\2<\u0370\b\1\4\2\t"+ + "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2<\u0370\b\1\4\2\t"+ "\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13"+ "\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+ "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+ @@ -196,271 +202,273 @@ public class BindingExpressionLexer extends Lexer { "\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f"+ "\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f"+ "\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f"+ - "\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\5f\u036f\nf\2\2\2g\3\2\3\5"+ - "\2\4\7\2\5\t\2\6\13\2\7\r\2\b\17\2\t\21\2\n\23\2\13\25\2\f\27\2\r\31\2"+ - "\16\33\2\17\35\2\20\37\2\21!\2\22#\2\23%\2\24\'\2\25)\2\26+\2\27-\2\30"+ - "/\2\31\61\2\32\63\2\33\65\2\34\67\2\359\2\36;\2\37=\2 ?\2!A\2\"C\2#E\2"+ - "$G\2%I\2&K\2\'M\2(O\2)Q\2*S\2+U\2,W\2-Y\2.[\2/]\2\60_\2\61a\2\2c\2\2e"+ - "\2\2g\2\2i\2\2k\2\2m\2\2o\2\2q\2\2s\2\2u\2\2w\2\2y\2\2{\2\2}\2\2\177\2"+ - "\2\u0081\2\2\u0083\2\2\u0085\2\2\u0087\2\2\u0089\2\2\u008b\2\2\u008d\2"+ - "\2\u008f\2\62\u0091\2\2\u0093\2\2\u0095\2\2\u0097\2\2\u0099\2\2\u009b"+ - "\2\2\u009d\2\2\u009f\2\2\u00a1\2\2\u00a3\2\2\u00a5\2\63\u00a7\2\64\u00a9"+ - "\2\2\u00ab\2\65\u00ad\2\66\u00af\2\2\u00b1\2\2\u00b3\2\2\u00b5\2\2\u00b7"+ - "\2\2\u00b9\2\2\u00bb\2\2\u00bd\2\67\u00bf\28\u00c1\2\2\u00c3\2\2\u00c5"+ - "\29\u00c7\2:\u00c9\2;\u00cb\2<\3\2\30\4\2NNnn\3\2\63;\4\2ZZzz\5\2\62;"+ - "CHch\3\2\629\4\2DDdd\3\2\62\63\4\2GGgg\4\2--//\6\2FFHHffhh\4\2RRrr\4\2"+ - "))^^\4\2$$^^\4\2^^bb\13\2$$))^^bbddhhppttvv\3\2\62\65\6\2&&C\\aac|\4\2"+ - "\2\u0101\ud802\udc01\3\2\ud802\udc01\3\2\udc02\ue001\7\2&&\62;C\\aac|"+ - "\5\2\13\f\16\17\"\"\u0395\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2"+ - "\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2\2\2"+ - "\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2\2\2\37\3"+ - "\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2\2\2+\3\2"+ - "\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2\2\2\2\67"+ - "\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2\2\2C\3\2"+ - "\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2O\3\2\2\2"+ - "\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3\2\2\2\2]"+ - "\3\2\2\2\2_\3\2\2\2\2\u008f\3\2\2\2\2\u00a5\3\2\2\2\2\u00a7\3\2\2\2\2"+ - "\u00ab\3\2\2\2\2\u00ad\3\2\2\2\2\u00bd\3\2\2\2\2\u00bf\3\2\2\2\2\u00c5"+ - "\3\2\2\2\2\u00c7\3\2\2\2\2\u00c9\3\2\2\2\2\u00cb\3\2\2\2\3\u00cd\3\2\2"+ - "\2\5\u00cf\3\2\2\2\7\u00d7\3\2\2\2\t\u00d9\3\2\2\2\13\u00dc\3\2\2\2\r"+ - "\u00de\3\2\2\2\17\u00e0\3\2\2\2\21\u00e2\3\2\2\2\23\u00e5\3\2\2\2\25\u00e7"+ - "\3\2\2\2\27\u00e9\3\2\2\2\31\u00eb\3\2\2\2\33\u00ed\3\2\2\2\35\u00ef\3"+ - "\2\2\2\37\u00f1\3\2\2\2!\u00f3\3\2\2\2#\u00f5\3\2\2\2%\u00f7\3\2\2\2\'"+ - "\u00fa\3\2\2\2)\u00fe\3\2\2\2+\u0101\3\2\2\2-\u0104\3\2\2\2/\u0107\3\2"+ - "\2\2\61\u0109\3\2\2\2\63\u010b\3\2\2\2\65\u0116\3\2\2\2\67\u0119\3\2\2"+ - "\29\u011c\3\2\2\2;\u011e\3\2\2\2=\u0120\3\2\2\2?\u0122\3\2\2\2A\u0125"+ - "\3\2\2\2C\u0128\3\2\2\2E\u012a\3\2\2\2G\u012c\3\2\2\2I\u012f\3\2\2\2K"+ - "\u0135\3\2\2\2M\u013d\3\2\2\2O\u0142\3\2\2\2Q\u0147\3\2\2\2S\u014d\3\2"+ - "\2\2U\u0151\3\2\2\2W\u0156\3\2\2\2Y\u015c\3\2\2\2[\u0163\3\2\2\2]\u0179"+ - "\3\2\2\2_\u017f\3\2\2\2a\u0181\3\2\2\2c\u0185\3\2\2\2e\u0189\3\2\2\2g"+ - "\u018d\3\2\2\2i\u0191\3\2\2\2k\u019d\3\2\2\2m\u019f\3\2\2\2o\u01ab\3\2"+ - "\2\2q\u01ad\3\2\2\2s\u01b1\3\2\2\2u\u01b4\3\2\2\2w\u01b8\3\2\2\2y\u01bc"+ - "\3\2\2\2{\u01c6\3\2\2\2}\u01ca\3\2\2\2\177\u01cc\3\2\2\2\u0081\u01d2\3"+ - "\2\2\2\u0083\u01dc\3\2\2\2\u0085\u01e0\3\2\2\2\u0087\u01e2\3\2\2\2\u0089"+ - "\u01e6\3\2\2\2\u008b\u01f0\3\2\2\2\u008d\u01f4\3\2\2\2\u008f\u01f8\3\2"+ - "\2\2\u0091\u0215\3\2\2\2\u0093\u0217\3\2\2\2\u0095\u021a\3\2\2\2\u0097"+ - "\u021d\3\2\2\2\u0099\u0221\3\2\2\2\u009b\u0223\3\2\2\2\u009d\u0225\3\2"+ - "\2\2\u009f\u0235\3\2\2\2\u00a1\u0237\3\2\2\2\u00a3\u023a\3\2\2\2\u00a5"+ - "\u0245\3\2\2\2\u00a7\u024f\3\2\2\2\u00a9\u0251\3\2\2\2\u00ab\u0253\3\2"+ - "\2\2\u00ad\u025c\3\2\2\2\u00af\u0263\3\2\2\2\u00b1\u0269\3\2\2\2\u00b3"+ - "\u026d\3\2\2\2\u00b5\u0273\3\2\2\2\u00b7\u0280\3\2\2\2\u00b9\u0282\3\2"+ - "\2\2\u00bb\u0289\3\2\2\2\u00bd\u028b\3\2\2\2\u00bf\u0290\3\2\2\2\u00c1"+ - "\u029d\3\2\2\2\u00c3\u02a5\3\2\2\2\u00c5\u02a8\3\2\2\2\u00c7\u02ae\3\2"+ - "\2\2\u00c9\u02c0\3\2\2\2\u00cb\u036e\3\2\2\2\u00cd\u00ce\7.\2\2\u00ce"+ - "\4\3\2\2\2\u00cf\u00d0\7f\2\2\u00d0\u00d1\7g\2\2\u00d1\u00d2\7h\2\2\u00d2"+ - "\u00d3\7c\2\2\u00d3\u00d4\7w\2\2\u00d4\u00d5\7n\2\2\u00d5\u00d6\7v\2\2"+ - "\u00d6\6\3\2\2\2\u00d7\u00d8\7?\2\2\u00d8\b\3\2\2\2\u00d9\u00da\7/\2\2"+ - "\u00da\u00db\7@\2\2\u00db\n\3\2\2\2\u00dc\u00dd\7*\2\2\u00dd\f\3\2\2\2"+ - "\u00de\u00df\7+\2\2\u00df\16\3\2\2\2\u00e0\u00e1\7\60\2\2\u00e1\20\3\2"+ - "\2\2\u00e2\u00e3\7<\2\2\u00e3\u00e4\7<\2\2\u00e4\22\3\2\2\2\u00e5\u00e6"+ - "\7]\2\2\u00e6\24\3\2\2\2\u00e7\u00e8\7_\2\2\u00e8\26\3\2\2\2\u00e9\u00ea"+ - "\7-\2\2\u00ea\30\3\2\2\2\u00eb\u00ec\7/\2\2\u00ec\32\3\2\2\2\u00ed\u00ee"+ - "\7\u0080\2\2\u00ee\34\3\2\2\2\u00ef\u00f0\7#\2\2\u00f0\36\3\2\2\2\u00f1"+ - "\u00f2\7,\2\2\u00f2 \3\2\2\2\u00f3\u00f4\7\61\2\2\u00f4\"\3\2\2\2\u00f5"+ - "\u00f6\7\'\2\2\u00f6$\3\2\2\2\u00f7\u00f8\7>\2\2\u00f8\u00f9\7>\2\2\u00f9"+ - "&\3\2\2\2\u00fa\u00fb\7@\2\2\u00fb\u00fc\7@\2\2\u00fc\u00fd\7@\2\2\u00fd"+ - "(\3\2\2\2\u00fe\u00ff\7@\2\2\u00ff\u0100\7@\2\2\u0100*\3\2\2\2\u0101\u0102"+ - "\7>\2\2\u0102\u0103\7?\2\2\u0103,\3\2\2\2\u0104\u0105\7@\2\2\u0105\u0106"+ - "\7?\2\2\u0106.\3\2\2\2\u0107\u0108\7@\2\2\u0108\60\3\2\2\2\u0109\u010a"+ - "\7>\2\2\u010a\62\3\2\2\2\u010b\u010c\7k\2\2\u010c\u010d\7p\2\2\u010d\u010e"+ - "\7u\2\2\u010e\u010f\7v\2\2\u010f\u0110\7c\2\2\u0110\u0111\7p\2\2\u0111"+ - "\u0112\7e\2\2\u0112\u0113\7g\2\2\u0113\u0114\7q\2\2\u0114\u0115\7h\2\2"+ - "\u0115\64\3\2\2\2\u0116\u0117\7?\2\2\u0117\u0118\7?\2\2\u0118\66\3\2\2"+ - "\2\u0119\u011a\7#\2\2\u011a\u011b\7?\2\2\u011b8\3\2\2\2\u011c\u011d\7"+ - "(\2\2\u011d:\3\2\2\2\u011e\u011f\7`\2\2\u011f<\3\2\2\2\u0120\u0121\7~"+ - "\2\2\u0121>\3\2\2\2\u0122\u0123\7(\2\2\u0123\u0124\7(\2\2\u0124@\3\2\2"+ - "\2\u0125\u0126\7~\2\2\u0126\u0127\7~\2\2\u0127B\3\2\2\2\u0128\u0129\7"+ - "A\2\2\u0129D\3\2\2\2\u012a\u012b\7<\2\2\u012bF\3\2\2\2\u012c\u012d\7A"+ - "\2\2\u012d\u012e\7A\2\2\u012eH\3\2\2\2\u012f\u0130\7e\2\2\u0130\u0131"+ - "\7n\2\2\u0131\u0132\7c\2\2\u0132\u0133\7u\2\2\u0133\u0134\7u\2\2\u0134"+ - "J\3\2\2\2\u0135\u0136\7d\2\2\u0136\u0137\7q\2\2\u0137\u0138\7q\2\2\u0138"+ - "\u0139\7n\2\2\u0139\u013a\7g\2\2\u013a\u013b\7c\2\2\u013b\u013c\7p\2\2"+ - "\u013cL\3\2\2\2\u013d\u013e\7e\2\2\u013e\u013f\7j\2\2\u013f\u0140\7c\2"+ - "\2\u0140\u0141\7t\2\2\u0141N\3\2\2\2\u0142\u0143\7d\2\2\u0143\u0144\7"+ - "{\2\2\u0144\u0145\7v\2\2\u0145\u0146\7g\2\2\u0146P\3\2\2\2\u0147\u0148"+ - "\7u\2\2\u0148\u0149\7j\2\2\u0149\u014a\7q\2\2\u014a\u014b\7t\2\2\u014b"+ - "\u014c\7v\2\2\u014cR\3\2\2\2\u014d\u014e\7k\2\2\u014e\u014f\7p\2\2\u014f"+ - "\u0150\7v\2\2\u0150T\3\2\2\2\u0151\u0152\7n\2\2\u0152\u0153\7q\2\2\u0153"+ - "\u0154\7p\2\2\u0154\u0155\7i\2\2\u0155V\3\2\2\2\u0156\u0157\7h\2\2\u0157"+ - "\u0158\7n\2\2\u0158\u0159\7q\2\2\u0159\u015a\7c\2\2\u015a\u015b\7v\2\2"+ - "\u015bX\3\2\2\2\u015c\u015d\7f\2\2\u015d\u015e\7q\2\2\u015e\u015f\7w\2"+ - "\2\u015f\u0160\7d\2\2\u0160\u0161\7n\2\2\u0161\u0162\7g\2\2\u0162Z\3\2"+ - "\2\2\u0163\u0164\7v\2\2\u0164\u0165\7j\2\2\u0165\u0166\7k\2\2\u0166\u0167"+ - "\7u\2\2\u0167\\\3\2\2\2\u0168\u0169\7X\2\2\u0169\u016a\7q\2\2\u016a\u016b"+ - "\7k\2\2\u016b\u017a\7f\2\2\u016c\u016d\7x\2\2\u016d\u016e\7q\2\2\u016e"+ - "\u016f\7k\2\2\u016f\u017a\7f\2\2\u0170\u0171\7\u00b1\2\2\u0171\u0172\7"+ - "^\2\2\u0172\u0173\7a\2\2\u0173\u0174\7*\2\2\u0174\u0175\7\u30c6\2\2\u0175"+ - "\u0176\7+\2\2\u0176\u0177\7a\2\2\u0177\u0178\7\61\2\2\u0178\u017a\7\u00b1"+ - "\2\2\u0179\u0168\3\2\2\2\u0179\u016c\3\2\2\2\u0179\u0170\3\2\2\2\u017a"+ - "^\3\2\2\2\u017b\u0180\5a\61\2\u017c\u0180\5c\62\2\u017d\u0180\5e\63\2"+ - "\u017e\u0180\5g\64\2\u017f\u017b\3\2\2\2\u017f\u017c\3\2\2\2\u017f\u017d"+ - "\3\2\2\2\u017f\u017e\3\2\2\2\u0180`\3\2\2\2\u0181\u0183\5k\66\2\u0182"+ - "\u0184\5i\65\2\u0183\u0182\3\2\2\2\u0183\u0184\3\2\2\2\u0184b\3\2\2\2"+ - "\u0185\u0187\5w<\2\u0186\u0188\5i\65\2\u0187\u0186\3\2\2\2\u0187\u0188"+ - "\3\2\2\2\u0188d\3\2\2\2\u0189\u018b\5\177@\2\u018a\u018c\5i\65\2\u018b"+ - "\u018a\3\2\2\2\u018b\u018c\3\2\2\2\u018cf\3\2\2\2\u018d\u018f\5\u0087"+ - "D\2\u018e\u0190\5i\65\2\u018f\u018e\3\2\2\2\u018f\u0190\3\2\2\2\u0190"+ - "h\3\2\2\2\u0191\u0192\t\2\2\2\u0192j\3\2\2\2\u0193\u019e\7\62\2\2\u0194"+ - "\u019b\5q9\2\u0195\u0197\5m\67\2\u0196\u0195\3\2\2\2\u0196\u0197\3\2\2"+ - "\2\u0197\u019c\3\2\2\2\u0198\u0199\5u;\2\u0199\u019a\5m\67\2\u019a\u019c"+ - "\3\2\2\2\u019b\u0196\3\2\2\2\u019b\u0198\3\2\2\2\u019c\u019e\3\2\2\2\u019d"+ - "\u0193\3\2\2\2\u019d\u0194\3\2\2\2\u019el\3\2\2\2\u019f\u01a7\5o8\2\u01a0"+ - "\u01a2\5s:\2\u01a1\u01a0\3\2\2\2\u01a2\u01a5\3\2\2\2\u01a3\u01a1\3\2\2"+ - "\2\u01a3\u01a4\3\2\2\2\u01a4\u01a6\3\2\2\2\u01a5\u01a3\3\2\2\2\u01a6\u01a8"+ - "\5o8\2\u01a7\u01a3\3\2\2\2\u01a7\u01a8\3\2\2\2\u01a8n\3\2\2\2\u01a9\u01ac"+ - "\7\62\2\2\u01aa\u01ac\5q9\2\u01ab\u01a9\3\2\2\2\u01ab\u01aa\3\2\2\2\u01ac"+ - "p\3\2\2\2\u01ad\u01ae\t\3\2\2\u01aer\3\2\2\2\u01af\u01b2\5o8\2\u01b0\u01b2"+ - "\7a\2\2\u01b1\u01af\3\2\2\2\u01b1\u01b0\3\2\2\2\u01b2t\3\2\2\2\u01b3\u01b5"+ - "\7a\2\2\u01b4\u01b3\3\2\2\2\u01b5\u01b6\3\2\2\2\u01b6\u01b4\3\2\2\2\u01b6"+ - "\u01b7\3\2\2\2\u01b7v\3\2\2\2\u01b8\u01b9\7\62\2\2\u01b9\u01ba\t\4\2\2"+ - "\u01ba\u01bb\5y=\2\u01bbx\3\2\2\2\u01bc\u01c4\5{>\2\u01bd\u01bf\5}?\2"+ - "\u01be\u01bd\3\2\2\2\u01bf\u01c2\3\2\2\2\u01c0\u01be\3\2\2\2\u01c0\u01c1"+ - "\3\2\2\2\u01c1\u01c3\3\2\2\2\u01c2\u01c0\3\2\2\2\u01c3\u01c5\5{>\2\u01c4"+ - "\u01c0\3\2\2\2\u01c4\u01c5\3\2\2\2\u01c5z\3\2\2\2\u01c6\u01c7\t\5\2\2"+ - "\u01c7|\3\2\2\2\u01c8\u01cb\5{>\2\u01c9\u01cb\7a\2\2\u01ca\u01c8\3\2\2"+ - "\2\u01ca\u01c9\3\2\2\2\u01cb~\3\2\2\2\u01cc\u01ce\7\62\2\2\u01cd\u01cf"+ - "\5u;\2\u01ce\u01cd\3\2\2\2\u01ce\u01cf\3\2\2\2\u01cf\u01d0\3\2\2\2\u01d0"+ - "\u01d1\5\u0081A\2\u01d1\u0080\3\2\2\2\u01d2\u01da\5\u0083B\2\u01d3\u01d5"+ - "\5\u0085C\2\u01d4\u01d3\3\2\2\2\u01d5\u01d8\3\2\2\2\u01d6\u01d4\3\2\2"+ - "\2\u01d6\u01d7\3\2\2\2\u01d7\u01d9\3\2\2\2\u01d8\u01d6\3\2\2\2\u01d9\u01db"+ - "\5\u0083B\2\u01da\u01d6\3\2\2\2\u01da\u01db\3\2\2\2\u01db\u0082\3\2\2"+ - "\2\u01dc\u01dd\t\6\2\2\u01dd\u0084\3\2\2\2\u01de\u01e1\5\u0083B\2\u01df"+ - "\u01e1\7a\2\2\u01e0\u01de\3\2\2\2\u01e0\u01df\3\2\2\2\u01e1\u0086\3\2"+ - "\2\2\u01e2\u01e3\7\62\2\2\u01e3\u01e4\t\7\2\2\u01e4\u01e5\5\u0089E\2\u01e5"+ - "\u0088\3\2\2\2\u01e6\u01ee\5\u008bF\2\u01e7\u01e9\5\u008dG\2\u01e8\u01e7"+ - "\3\2\2\2\u01e9\u01ec\3\2\2\2\u01ea\u01e8\3\2\2\2\u01ea\u01eb\3\2\2\2\u01eb"+ - "\u01ed\3\2\2\2\u01ec\u01ea\3\2\2\2\u01ed\u01ef\5\u008bF\2\u01ee\u01ea"+ - "\3\2\2\2\u01ee\u01ef\3\2\2\2\u01ef\u008a\3\2\2\2\u01f0\u01f1\t\b\2\2\u01f1"+ - "\u008c\3\2\2\2\u01f2\u01f5\5\u008bF\2\u01f3\u01f5\7a\2\2\u01f4\u01f2\3"+ - "\2\2\2\u01f4\u01f3\3\2\2\2\u01f5\u008e\3\2\2\2\u01f6\u01f9\5\u0091I\2"+ - "\u01f7\u01f9\5\u009dO\2\u01f8\u01f6\3\2\2\2\u01f8\u01f7\3\2\2\2\u01f9"+ - "\u0090\3\2\2\2\u01fa\u01fb\5m\67\2\u01fb\u01fd\7\60\2\2\u01fc\u01fe\5"+ - "m\67\2\u01fd\u01fc\3\2\2\2\u01fd\u01fe\3\2\2\2\u01fe\u0200\3\2\2\2\u01ff"+ - "\u0201\5\u0093J\2\u0200\u01ff\3\2\2\2\u0200\u0201\3\2\2\2\u0201\u0203"+ - "\3\2\2\2\u0202\u0204\5\u009bN\2\u0203\u0202\3\2\2\2\u0203\u0204\3\2\2"+ - "\2\u0204\u0216\3\2\2\2\u0205\u0206\7\60\2\2\u0206\u0208\5m\67\2\u0207"+ - "\u0209\5\u0093J\2\u0208\u0207\3\2\2\2\u0208\u0209\3\2\2\2\u0209\u020b"+ - "\3\2\2\2\u020a\u020c\5\u009bN\2\u020b\u020a\3\2\2\2\u020b\u020c\3\2\2"+ - "\2\u020c\u0216\3\2\2\2\u020d\u020e\5m\67\2\u020e\u0210\5\u0093J\2\u020f"+ - "\u0211\5\u009bN\2\u0210\u020f\3\2\2\2\u0210\u0211\3\2\2\2\u0211\u0216"+ - "\3\2\2\2\u0212\u0213\5m\67\2\u0213\u0214\5\u009bN\2\u0214\u0216\3\2\2"+ - "\2\u0215\u01fa\3\2\2\2\u0215\u0205\3\2\2\2\u0215\u020d\3\2\2\2\u0215\u0212"+ - "\3\2\2\2\u0216\u0092\3\2\2\2\u0217\u0218\5\u0095K\2\u0218\u0219\5\u0097"+ - "L\2\u0219\u0094\3\2\2\2\u021a\u021b\t\t\2\2\u021b\u0096\3\2\2\2\u021c"+ - "\u021e\5\u0099M\2\u021d\u021c\3\2\2\2\u021d\u021e\3\2\2\2\u021e\u021f"+ - "\3\2\2\2\u021f\u0220\5m\67\2\u0220\u0098\3\2\2\2\u0221\u0222\t\n\2\2\u0222"+ - "\u009a\3\2\2\2\u0223\u0224\t\13\2\2\u0224\u009c\3\2\2\2\u0225\u0226\5"+ - "\u009fP\2\u0226\u0228\5\u00a1Q\2\u0227\u0229\5\u009bN\2\u0228\u0227\3"+ - "\2\2\2\u0228\u0229\3\2\2\2\u0229\u009e\3\2\2\2\u022a\u022c\5w<\2\u022b"+ - "\u022d\7\60\2\2\u022c\u022b\3\2\2\2\u022c\u022d\3\2\2\2\u022d\u0236\3"+ - "\2\2\2\u022e\u022f\7\62\2\2\u022f\u0231\t\4\2\2\u0230\u0232\5y=\2\u0231"+ - "\u0230\3\2\2\2\u0231\u0232\3\2\2\2\u0232\u0233\3\2\2\2\u0233\u0234\7\60"+ - "\2\2\u0234\u0236\5y=\2\u0235\u022a\3\2\2\2\u0235\u022e\3\2\2\2\u0236\u00a0"+ - "\3\2\2\2\u0237\u0238\5\u00a3R\2\u0238\u0239\5\u0097L\2\u0239\u00a2\3\2"+ - "\2\2\u023a\u023b\t\f\2\2\u023b\u00a4\3\2\2\2\u023c\u023d\7v\2\2\u023d"+ - "\u023e\7t\2\2\u023e\u023f\7w\2\2\u023f\u0246\7g\2\2\u0240\u0241\7h\2\2"+ - "\u0241\u0242\7c\2\2\u0242\u0243\7n\2\2\u0243\u0244\7u\2\2\u0244\u0246"+ - "\7g\2\2\u0245\u023c\3\2\2\2\u0245\u0240\3\2\2\2\u0246\u00a6\3\2\2\2\u0247"+ - "\u0248\7)\2\2\u0248\u0249\5\u00a9U\2\u0249\u024a\7)\2\2\u024a\u0250\3"+ - "\2\2\2\u024b\u024c\7)\2\2\u024c\u024d\5\u00b5[\2\u024d\u024e\7)\2\2\u024e"+ - "\u0250\3\2\2\2\u024f\u0247\3\2\2\2\u024f\u024b\3\2\2\2\u0250\u00a8\3\2"+ - "\2\2\u0251\u0252\n\r\2\2\u0252\u00aa\3\2\2\2\u0253\u0257\7b\2\2\u0254"+ - "\u0256\5\u00b3Z\2\u0255\u0254\3\2\2\2\u0256\u0259\3\2\2\2\u0257\u0255"+ - "\3\2\2\2\u0257\u0258\3\2\2\2\u0258\u025a\3\2\2\2\u0259\u0257\3\2\2\2\u025a"+ - "\u025b\7b\2\2\u025b\u00ac\3\2\2\2\u025c\u025e\7$\2\2\u025d\u025f\5\u00af"+ - "X\2\u025e\u025d\3\2\2\2\u025e\u025f\3\2\2\2\u025f\u0260\3\2\2\2\u0260"+ - "\u0261\7$\2\2\u0261\u00ae\3\2\2\2\u0262\u0264\5\u00b1Y\2\u0263\u0262\3"+ - "\2\2\2\u0264\u0265\3\2\2\2\u0265\u0263\3\2\2\2\u0265\u0266\3\2\2\2\u0266"+ - "\u00b0\3\2\2\2\u0267\u026a\n\16\2\2\u0268\u026a\5\u00b5[\2\u0269\u0267"+ - "\3\2\2\2\u0269\u0268\3\2\2\2\u026a\u00b2\3\2\2\2\u026b\u026e\n\17\2\2"+ - "\u026c\u026e\5\u00b5[\2\u026d\u026b\3\2\2\2\u026d\u026c\3\2\2\2\u026e"+ - "\u00b4\3\2\2\2\u026f\u0270\7^\2\2\u0270\u0274\t\20\2\2\u0271\u0274\5\u00b7"+ - "\\\2\u0272\u0274\5\u00b9]\2\u0273\u026f\3\2\2\2\u0273\u0271\3\2\2\2\u0273"+ - "\u0272\3\2\2\2\u0274\u00b6\3\2\2\2\u0275\u0276\7^\2\2\u0276\u0281\5\u0083"+ - "B\2\u0277\u0278\7^\2\2\u0278\u0279\5\u0083B\2\u0279\u027a\5\u0083B\2\u027a"+ - "\u0281\3\2\2\2\u027b\u027c\7^\2\2\u027c\u027d\5\u00bb^\2\u027d\u027e\5"+ - "\u0083B\2\u027e\u027f\5\u0083B\2\u027f\u0281\3\2\2\2\u0280\u0275\3\2\2"+ - "\2\u0280\u0277\3\2\2\2\u0280\u027b\3\2\2\2\u0281\u00b8\3\2\2\2\u0282\u0283"+ - "\7^\2\2\u0283\u0284\7w\2\2\u0284\u0285\5{>\2\u0285\u0286\5{>\2\u0286\u0287"+ - "\5{>\2\u0287\u0288\5{>\2\u0288\u00ba\3\2\2\2\u0289\u028a\t\21\2\2\u028a"+ - "\u00bc\3\2\2\2\u028b\u028c\7p\2\2\u028c\u028d\7w\2\2\u028d\u028e\7n\2"+ - "\2\u028e\u028f\7n\2\2\u028f\u00be\3\2\2\2\u0290\u0294\5\u00c1a\2\u0291"+ - "\u0293\5\u00c3b\2\u0292\u0291\3\2\2\2\u0293\u0296\3\2\2\2\u0294\u0292"+ - "\3\2\2\2\u0294\u0295\3\2\2\2\u0295\u00c0\3\2\2\2\u0296\u0294\3\2\2\2\u0297"+ - "\u029e\t\22\2\2\u0298\u0299\n\23\2\2\u0299\u029e\6a\2\2\u029a\u029b\t"+ - "\24\2\2\u029b\u029c\t\25\2\2\u029c\u029e\6a\3\2\u029d\u0297\3\2\2\2\u029d"+ - "\u0298\3\2\2\2\u029d\u029a\3\2\2\2\u029e\u00c2\3\2\2\2\u029f\u02a6\t\26"+ - "\2\2\u02a0\u02a1\n\23\2\2\u02a1\u02a6\6b\4\2\u02a2\u02a3\t\24\2\2\u02a3"+ - "\u02a4\t\25\2\2\u02a4\u02a6\6b\5\2\u02a5\u029f\3\2\2\2\u02a5\u02a0\3\2"+ - "\2\2\u02a5\u02a2\3\2\2\2\u02a6\u00c4\3\2\2\2\u02a7\u02a9\t\27\2\2\u02a8"+ - "\u02a7\3\2\2\2\u02a9\u02aa\3\2\2\2\u02aa\u02a8\3\2\2\2\u02aa\u02ab\3\2"+ - "\2\2\u02ab\u02ac\3\2\2\2\u02ac\u02ad\bc\2\2\u02ad\u00c6\3\2\2\2\u02ae"+ - "\u02b2\7B\2\2\u02af\u02b0\5\u00c9e\2\u02b0\u02b1\7<\2\2\u02b1\u02b3\3"+ - "\2\2\2\u02b2\u02af\3\2\2\2\u02b2\u02b3\3\2\2\2\u02b3\u02b4\3\2\2\2\u02b4"+ - "\u02b5\5\u00cbf\2\u02b5\u02b6\7\61\2\2\u02b6\u02b7\5\u00bf`\2\u02b7\u00c8"+ - "\3\2\2\2\u02b8\u02b9\7c\2\2\u02b9\u02ba\7p\2\2\u02ba\u02bb\7f\2\2\u02bb"+ - "\u02bc\7t\2\2\u02bc\u02bd\7q\2\2\u02bd\u02be\7k\2\2\u02be\u02c1\7f\2\2"+ - "\u02bf\u02c1\5\u00bf`\2\u02c0\u02b8\3\2\2\2\u02c0\u02bf\3\2\2\2\u02c1"+ - "\u00ca\3\2\2\2\u02c2\u02c3\7c\2\2\u02c3\u02c4\7p\2\2\u02c4\u02c5\7k\2"+ - "\2\u02c5\u036f\7o\2\2\u02c6\u02c7\7c\2\2\u02c7\u02c8\7p\2\2\u02c8\u02c9"+ - "\7k\2\2\u02c9\u02ca\7o\2\2\u02ca\u02cb\7c\2\2\u02cb\u02cc\7v\2\2\u02cc"+ - "\u02cd\7q\2\2\u02cd\u036f\7t\2\2\u02ce\u02cf\7d\2\2\u02cf\u02d0\7q\2\2"+ - "\u02d0\u02d1\7q\2\2\u02d1\u036f\7n\2\2\u02d2\u02d3\7e\2\2\u02d3\u02d4"+ - "\7q\2\2\u02d4\u02d5\7n\2\2\u02d5\u02d6\7q\2\2\u02d6\u036f\7t\2\2\u02d7"+ - "\u02d8\7e\2\2\u02d8\u02d9\7q\2\2\u02d9\u02da\7n\2\2\u02da\u02db\7q\2\2"+ - "\u02db\u02dc\7t\2\2\u02dc\u02dd\7U\2\2\u02dd\u02de\7v\2\2\u02de\u02df"+ - "\7c\2\2\u02df\u02e0\7v\2\2\u02e0\u02e1\7g\2\2\u02e1\u02e2\7N\2\2\u02e2"+ - "\u02e3\7k\2\2\u02e3\u02e4\7u\2\2\u02e4\u036f\7v\2\2\u02e5\u02e6\7f\2\2"+ - "\u02e6\u02e7\7k\2\2\u02e7\u02e8\7o\2\2\u02e8\u02e9\7g\2\2\u02e9\u036f"+ - "\7p\2\2\u02ea\u02eb\7f\2\2\u02eb\u02ec\7k\2\2\u02ec\u02ed\7o\2\2\u02ed"+ - "\u02ee\7g\2\2\u02ee\u02ef\7p\2\2\u02ef\u02f0\7Q\2\2\u02f0\u02f1\7h\2\2"+ - "\u02f1\u02f2\7h\2\2\u02f2\u02f3\7u\2\2\u02f3\u02f4\7g\2\2\u02f4\u036f"+ - "\7v\2\2\u02f5\u02f6\7f\2\2\u02f6\u02f7\7k\2\2\u02f7\u02f8\7o\2\2\u02f8"+ - "\u02f9\7g\2\2\u02f9\u02fa\7p\2\2\u02fa\u02fb\7U\2\2\u02fb\u02fc\7k\2\2"+ - "\u02fc\u02fd\7|\2\2\u02fd\u036f\7g\2\2\u02fe\u02ff\7f\2\2\u02ff\u0300"+ - "\7t\2\2\u0300\u0301\7c\2\2\u0301\u0302\7y\2\2\u0302\u0303\7c\2\2\u0303"+ - "\u0304\7d\2\2\u0304\u0305\7n\2\2\u0305\u036f\7g\2\2\u0306\u0307\7h\2\2"+ - "\u0307\u0308\7t\2\2\u0308\u0309\7c\2\2\u0309\u030a\7e\2\2\u030a\u030b"+ - "\7v\2\2\u030b\u030c\7k\2\2\u030c\u030d\7q\2\2\u030d\u036f\7p\2\2\u030e"+ - "\u030f\7k\2\2\u030f\u036f\7f\2\2\u0310\u0311\7k\2\2\u0311\u0312\7p\2\2"+ - "\u0312\u0313\7v\2\2\u0313\u0314\7g\2\2\u0314\u0315\7i\2\2\u0315\u0316"+ - "\7g\2\2\u0316\u036f\7t\2\2\u0317\u0318\7k\2\2\u0318\u0319\7p\2\2\u0319"+ - "\u031a\7v\2\2\u031a\u031b\7C\2\2\u031b\u031c\7t\2\2\u031c\u031d\7t\2\2"+ - "\u031d\u031e\7c\2\2\u031e\u036f\7{\2\2\u031f\u0320\7k\2\2\u0320\u0321"+ - "\7p\2\2\u0321\u0322\7v\2\2\u0322\u0323\7g\2\2\u0323\u0324\7t\2\2\u0324"+ - "\u0325\7r\2\2\u0325\u0326\7q\2\2\u0326\u0327\7n\2\2\u0327\u0328\7c\2\2"+ - "\u0328\u0329\7v\2\2\u0329\u032a\7q\2\2\u032a\u036f\7t\2\2\u032b\u032c"+ - "\7n\2\2\u032c\u032d\7c\2\2\u032d\u032e\7{\2\2\u032e\u032f\7q\2\2\u032f"+ - "\u0330\7w\2\2\u0330\u036f\7v\2\2\u0331\u0332\7r\2\2\u0332\u0333\7n\2\2"+ - "\u0333\u0334\7w\2\2\u0334\u0335\7t\2\2\u0335\u0336\7c\2\2\u0336\u0337"+ - "\7n\2\2\u0337\u036f\7u\2\2\u0338\u0339\7u\2\2\u0339\u033a\7v\2\2\u033a"+ - "\u033b\7c\2\2\u033b\u033c\7v\2\2\u033c\u033d\7g\2\2\u033d\u033e\7N\2\2"+ - "\u033e\u033f\7k\2\2\u033f\u0340\7u\2\2\u0340\u0341\7v\2\2\u0341\u0342"+ - "\7C\2\2\u0342\u0343\7p\2\2\u0343\u0344\7k\2\2\u0344\u0345\7o\2\2\u0345"+ - "\u0346\7c\2\2\u0346\u0347\7v\2\2\u0347\u0348\7q\2\2\u0348\u036f\7t\2\2"+ - "\u0349\u034a\7u\2\2\u034a\u034b\7v\2\2\u034b\u034c\7t\2\2\u034c\u034d"+ - "\7k\2\2\u034d\u034e\7p\2\2\u034e\u036f\7i\2\2\u034f\u0350\7u\2\2\u0350"+ - "\u0351\7v\2\2\u0351\u0352\7t\2\2\u0352\u0353\7k\2\2\u0353\u0354\7p\2\2"+ - "\u0354\u0355\7i\2\2\u0355\u0356\7C\2\2\u0356\u0357\7t\2\2\u0357\u0358"+ - "\7t\2\2\u0358\u0359\7c\2\2\u0359\u036f\7{\2\2\u035a\u035b\7v\2\2\u035b"+ - "\u035c\7t\2\2\u035c\u035d\7c\2\2\u035d\u035e\7p\2\2\u035e\u035f\7u\2\2"+ - "\u035f\u0360\7k\2\2\u0360\u0361\7v\2\2\u0361\u0362\7k\2\2\u0362\u0363"+ - "\7q\2\2\u0363\u036f\7p\2\2\u0364\u0365\7v\2\2\u0365\u0366\7{\2\2\u0366"+ - "\u0367\7r\2\2\u0367\u0368\7g\2\2\u0368\u0369\7f\2\2\u0369\u036a\7C\2\2"+ - "\u036a\u036b\7t\2\2\u036b\u036c\7t\2\2\u036c\u036d\7c\2\2\u036d\u036f"+ - "\7{\2\2\u036e\u02c2\3\2\2\2\u036e\u02c6\3\2\2\2\u036e\u02ce\3\2\2\2\u036e"+ - "\u02d2\3\2\2\2\u036e\u02d7\3\2\2\2\u036e\u02e5\3\2\2\2\u036e\u02ea\3\2"+ - "\2\2\u036e\u02f5\3\2\2\2\u036e\u02fe\3\2\2\2\u036e\u0306\3\2\2\2\u036e"+ - "\u030e\3\2\2\2\u036e\u0310\3\2\2\2\u036e\u0317\3\2\2\2\u036e\u031f\3\2"+ - "\2\2\u036e\u032b\3\2\2\2\u036e\u0331\3\2\2\2\u036e\u0338\3\2\2\2\u036e"+ - "\u0349\3\2\2\2\u036e\u034f\3\2\2\2\u036e\u035a\3\2\2\2\u036e\u0364\3\2"+ - "\2\2\u036f\u00cc\3\2\2\28\2\u0179\u017f\u0183\u0187\u018b\u018f\u0196"+ - "\u019b\u019d\u01a3\u01a7\u01ab\u01b1\u01b6\u01c0\u01c4\u01ca\u01ce\u01d6"+ - "\u01da\u01e0\u01ea\u01ee\u01f4\u01f8\u01fd\u0200\u0203\u0208\u020b\u0210"+ - "\u0215\u021d\u0228\u022c\u0231\u0235\u0245\u024f\u0257\u025e\u0265\u0269"+ - "\u026d\u0273\u0280\u0294\u029d\u02a5\u02aa\u02b2\u02c0\u036e\3\b\2\2"; + "\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\3f\5f\u036f\nf\2\2g\3\3\5\4\7"+ + "\5\t\6\13\7\r\b\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20\37\21!\22"+ + "#\23%\24\'\25)\26+\27-\30/\31\61\32\63\33\65\34\67\359\36;\37= ?!A\"C"+ + "#E$G%I&K\'M(O)Q*S+U,W-Y.[/]\60_\61a\2c\2e\2g\2i\2k\2m\2o\2q\2s\2u\2w\2"+ + "y\2{\2}\2\177\2\u0081\2\u0083\2\u0085\2\u0087\2\u0089\2\u008b\2\u008d"+ + "\2\u008f\62\u0091\2\u0093\2\u0095\2\u0097\2\u0099\2\u009b\2\u009d\2\u009f"+ + "\2\u00a1\2\u00a3\2\u00a5\63\u00a7\64\u00a9\2\u00ab\65\u00ad\66\u00af\2"+ + "\u00b1\2\u00b3\2\u00b5\2\u00b7\2\u00b9\2\u00bb\2\u00bd\67\u00bf8\u00c1"+ + "\2\u00c3\2\u00c59\u00c7:\u00c9;\u00cb<\3\2\30\4\2NNnn\3\2\63;\4\2ZZzz"+ + "\5\2\62;CHch\3\2\629\4\2DDdd\3\2\62\63\4\2GGgg\4\2--//\6\2FFHHffhh\4\2"+ + "RRrr\4\2))^^\4\2$$^^\4\2^^bb\13\2$$))^^bbddhhppttvv\3\2\62\65\6\2&&C\\"+ + "aac|\4\2\2\u0101\ud802\udc01\3\2\ud802\udc01\3\2\udc02\ue001\7\2&&\62"+ + ";C\\aac|\5\2\13\f\16\17\"\"\u0395\2\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2"+ + "\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3"+ + "\2\2\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2\2\2\2\35\3\2\2"+ + "\2\2\37\3\2\2\2\2!\3\2\2\2\2#\3\2\2\2\2%\3\2\2\2\2\'\3\2\2\2\2)\3\2\2"+ + "\2\2+\3\2\2\2\2-\3\2\2\2\2/\3\2\2\2\2\61\3\2\2\2\2\63\3\2\2\2\2\65\3\2"+ + "\2\2\2\67\3\2\2\2\29\3\2\2\2\2;\3\2\2\2\2=\3\2\2\2\2?\3\2\2\2\2A\3\2\2"+ + "\2\2C\3\2\2\2\2E\3\2\2\2\2G\3\2\2\2\2I\3\2\2\2\2K\3\2\2\2\2M\3\2\2\2\2"+ + "O\3\2\2\2\2Q\3\2\2\2\2S\3\2\2\2\2U\3\2\2\2\2W\3\2\2\2\2Y\3\2\2\2\2[\3"+ + "\2\2\2\2]\3\2\2\2\2_\3\2\2\2\2\u008f\3\2\2\2\2\u00a5\3\2\2\2\2\u00a7\3"+ + "\2\2\2\2\u00ab\3\2\2\2\2\u00ad\3\2\2\2\2\u00bd\3\2\2\2\2\u00bf\3\2\2\2"+ + "\2\u00c5\3\2\2\2\2\u00c7\3\2\2\2\2\u00c9\3\2\2\2\2\u00cb\3\2\2\2\3\u00cd"+ + "\3\2\2\2\5\u00cf\3\2\2\2\7\u00d7\3\2\2\2\t\u00d9\3\2\2\2\13\u00dc\3\2"+ + "\2\2\r\u00de\3\2\2\2\17\u00e0\3\2\2\2\21\u00e2\3\2\2\2\23\u00e5\3\2\2"+ + "\2\25\u00e7\3\2\2\2\27\u00e9\3\2\2\2\31\u00eb\3\2\2\2\33\u00ed\3\2\2\2"+ + "\35\u00ef\3\2\2\2\37\u00f1\3\2\2\2!\u00f3\3\2\2\2#\u00f5\3\2\2\2%\u00f7"+ + "\3\2\2\2\'\u00fa\3\2\2\2)\u00fe\3\2\2\2+\u0101\3\2\2\2-\u0104\3\2\2\2"+ + "/\u0107\3\2\2\2\61\u0109\3\2\2\2\63\u010b\3\2\2\2\65\u0116\3\2\2\2\67"+ + "\u0119\3\2\2\29\u011c\3\2\2\2;\u011e\3\2\2\2=\u0120\3\2\2\2?\u0122\3\2"+ + "\2\2A\u0125\3\2\2\2C\u0128\3\2\2\2E\u012a\3\2\2\2G\u012c\3\2\2\2I\u012f"+ + "\3\2\2\2K\u0135\3\2\2\2M\u013d\3\2\2\2O\u0142\3\2\2\2Q\u0147\3\2\2\2S"+ + "\u014d\3\2\2\2U\u0151\3\2\2\2W\u0156\3\2\2\2Y\u015c\3\2\2\2[\u0163\3\2"+ + "\2\2]\u0179\3\2\2\2_\u017f\3\2\2\2a\u0181\3\2\2\2c\u0185\3\2\2\2e\u0189"+ + "\3\2\2\2g\u018d\3\2\2\2i\u0191\3\2\2\2k\u019d\3\2\2\2m\u019f\3\2\2\2o"+ + "\u01ab\3\2\2\2q\u01ad\3\2\2\2s\u01b1\3\2\2\2u\u01b4\3\2\2\2w\u01b8\3\2"+ + "\2\2y\u01bc\3\2\2\2{\u01c6\3\2\2\2}\u01ca\3\2\2\2\177\u01cc\3\2\2\2\u0081"+ + "\u01d2\3\2\2\2\u0083\u01dc\3\2\2\2\u0085\u01e0\3\2\2\2\u0087\u01e2\3\2"+ + "\2\2\u0089\u01e6\3\2\2\2\u008b\u01f0\3\2\2\2\u008d\u01f4\3\2\2\2\u008f"+ + "\u01f8\3\2\2\2\u0091\u0215\3\2\2\2\u0093\u0217\3\2\2\2\u0095\u021a\3\2"+ + "\2\2\u0097\u021d\3\2\2\2\u0099\u0221\3\2\2\2\u009b\u0223\3\2\2\2\u009d"+ + "\u0225\3\2\2\2\u009f\u0235\3\2\2\2\u00a1\u0237\3\2\2\2\u00a3\u023a\3\2"+ + "\2\2\u00a5\u0245\3\2\2\2\u00a7\u024f\3\2\2\2\u00a9\u0251\3\2\2\2\u00ab"+ + "\u0253\3\2\2\2\u00ad\u025c\3\2\2\2\u00af\u0263\3\2\2\2\u00b1\u0269\3\2"+ + "\2\2\u00b3\u026d\3\2\2\2\u00b5\u0273\3\2\2\2\u00b7\u0280\3\2\2\2\u00b9"+ + "\u0282\3\2\2\2\u00bb\u0289\3\2\2\2\u00bd\u028b\3\2\2\2\u00bf\u0290\3\2"+ + "\2\2\u00c1\u029d\3\2\2\2\u00c3\u02a5\3\2\2\2\u00c5\u02a8\3\2\2\2\u00c7"+ + "\u02ae\3\2\2\2\u00c9\u02c0\3\2\2\2\u00cb\u036e\3\2\2\2\u00cd\u00ce\7."+ + "\2\2\u00ce\4\3\2\2\2\u00cf\u00d0\7f\2\2\u00d0\u00d1\7g\2\2\u00d1\u00d2"+ + "\7h\2\2\u00d2\u00d3\7c\2\2\u00d3\u00d4\7w\2\2\u00d4\u00d5\7n\2\2\u00d5"+ + "\u00d6\7v\2\2\u00d6\6\3\2\2\2\u00d7\u00d8\7?\2\2\u00d8\b\3\2\2\2\u00d9"+ + "\u00da\7/\2\2\u00da\u00db\7@\2\2\u00db\n\3\2\2\2\u00dc\u00dd\7*\2\2\u00dd"+ + "\f\3\2\2\2\u00de\u00df\7+\2\2\u00df\16\3\2\2\2\u00e0\u00e1\7\60\2\2\u00e1"+ + "\20\3\2\2\2\u00e2\u00e3\7<\2\2\u00e3\u00e4\7<\2\2\u00e4\22\3\2\2\2\u00e5"+ + "\u00e6\7]\2\2\u00e6\24\3\2\2\2\u00e7\u00e8\7_\2\2\u00e8\26\3\2\2\2\u00e9"+ + "\u00ea\7-\2\2\u00ea\30\3\2\2\2\u00eb\u00ec\7/\2\2\u00ec\32\3\2\2\2\u00ed"+ + "\u00ee\7\u0080\2\2\u00ee\34\3\2\2\2\u00ef\u00f0\7#\2\2\u00f0\36\3\2\2"+ + "\2\u00f1\u00f2\7,\2\2\u00f2 \3\2\2\2\u00f3\u00f4\7\61\2\2\u00f4\"\3\2"+ + "\2\2\u00f5\u00f6\7\'\2\2\u00f6$\3\2\2\2\u00f7\u00f8\7>\2\2\u00f8\u00f9"+ + "\7>\2\2\u00f9&\3\2\2\2\u00fa\u00fb\7@\2\2\u00fb\u00fc\7@\2\2\u00fc\u00fd"+ + "\7@\2\2\u00fd(\3\2\2\2\u00fe\u00ff\7@\2\2\u00ff\u0100\7@\2\2\u0100*\3"+ + "\2\2\2\u0101\u0102\7>\2\2\u0102\u0103\7?\2\2\u0103,\3\2\2\2\u0104\u0105"+ + "\7@\2\2\u0105\u0106\7?\2\2\u0106.\3\2\2\2\u0107\u0108\7@\2\2\u0108\60"+ + "\3\2\2\2\u0109\u010a\7>\2\2\u010a\62\3\2\2\2\u010b\u010c\7k\2\2\u010c"+ + "\u010d\7p\2\2\u010d\u010e\7u\2\2\u010e\u010f\7v\2\2\u010f\u0110\7c\2\2"+ + "\u0110\u0111\7p\2\2\u0111\u0112\7e\2\2\u0112\u0113\7g\2\2\u0113\u0114"+ + "\7q\2\2\u0114\u0115\7h\2\2\u0115\64\3\2\2\2\u0116\u0117\7?\2\2\u0117\u0118"+ + "\7?\2\2\u0118\66\3\2\2\2\u0119\u011a\7#\2\2\u011a\u011b\7?\2\2\u011b8"+ + "\3\2\2\2\u011c\u011d\7(\2\2\u011d:\3\2\2\2\u011e\u011f\7`\2\2\u011f<\3"+ + "\2\2\2\u0120\u0121\7~\2\2\u0121>\3\2\2\2\u0122\u0123\7(\2\2\u0123\u0124"+ + "\7(\2\2\u0124@\3\2\2\2\u0125\u0126\7~\2\2\u0126\u0127\7~\2\2\u0127B\3"+ + "\2\2\2\u0128\u0129\7A\2\2\u0129D\3\2\2\2\u012a\u012b\7<\2\2\u012bF\3\2"+ + "\2\2\u012c\u012d\7A\2\2\u012d\u012e\7A\2\2\u012eH\3\2\2\2\u012f\u0130"+ + "\7e\2\2\u0130\u0131\7n\2\2\u0131\u0132\7c\2\2\u0132\u0133\7u\2\2\u0133"+ + "\u0134\7u\2\2\u0134J\3\2\2\2\u0135\u0136\7d\2\2\u0136\u0137\7q\2\2\u0137"+ + "\u0138\7q\2\2\u0138\u0139\7n\2\2\u0139\u013a\7g\2\2\u013a\u013b\7c\2\2"+ + "\u013b\u013c\7p\2\2\u013cL\3\2\2\2\u013d\u013e\7e\2\2\u013e\u013f\7j\2"+ + "\2\u013f\u0140\7c\2\2\u0140\u0141\7t\2\2\u0141N\3\2\2\2\u0142\u0143\7"+ + "d\2\2\u0143\u0144\7{\2\2\u0144\u0145\7v\2\2\u0145\u0146\7g\2\2\u0146P"+ + "\3\2\2\2\u0147\u0148\7u\2\2\u0148\u0149\7j\2\2\u0149\u014a\7q\2\2\u014a"+ + "\u014b\7t\2\2\u014b\u014c\7v\2\2\u014cR\3\2\2\2\u014d\u014e\7k\2\2\u014e"+ + "\u014f\7p\2\2\u014f\u0150\7v\2\2\u0150T\3\2\2\2\u0151\u0152\7n\2\2\u0152"+ + "\u0153\7q\2\2\u0153\u0154\7p\2\2\u0154\u0155\7i\2\2\u0155V\3\2\2\2\u0156"+ + "\u0157\7h\2\2\u0157\u0158\7n\2\2\u0158\u0159\7q\2\2\u0159\u015a\7c\2\2"+ + "\u015a\u015b\7v\2\2\u015bX\3\2\2\2\u015c\u015d\7f\2\2\u015d\u015e\7q\2"+ + "\2\u015e\u015f\7w\2\2\u015f\u0160\7d\2\2\u0160\u0161\7n\2\2\u0161\u0162"+ + "\7g\2\2\u0162Z\3\2\2\2\u0163\u0164\7v\2\2\u0164\u0165\7j\2\2\u0165\u0166"+ + "\7k\2\2\u0166\u0167\7u\2\2\u0167\\\3\2\2\2\u0168\u0169\7X\2\2\u0169\u016a"+ + "\7q\2\2\u016a\u016b\7k\2\2\u016b\u017a\7f\2\2\u016c\u016d\7x\2\2\u016d"+ + "\u016e\7q\2\2\u016e\u016f\7k\2\2\u016f\u017a\7f\2\2\u0170\u0171\7\u00b1"+ + "\2\2\u0171\u0172\7^\2\2\u0172\u0173\7a\2\2\u0173\u0174\7*\2\2\u0174\u0175"+ + "\7\u30c6\2\2\u0175\u0176\7+\2\2\u0176\u0177\7a\2\2\u0177\u0178\7\61\2"+ + "\2\u0178\u017a\7\u00b1\2\2\u0179\u0168\3\2\2\2\u0179\u016c\3\2\2\2\u0179"+ + "\u0170\3\2\2\2\u017a^\3\2\2\2\u017b\u0180\5a\61\2\u017c\u0180\5c\62\2"+ + "\u017d\u0180\5e\63\2\u017e\u0180\5g\64\2\u017f\u017b\3\2\2\2\u017f\u017c"+ + "\3\2\2\2\u017f\u017d\3\2\2\2\u017f\u017e\3\2\2\2\u0180`\3\2\2\2\u0181"+ + "\u0183\5k\66\2\u0182\u0184\5i\65\2\u0183\u0182\3\2\2\2\u0183\u0184\3\2"+ + "\2\2\u0184b\3\2\2\2\u0185\u0187\5w<\2\u0186\u0188\5i\65\2\u0187\u0186"+ + "\3\2\2\2\u0187\u0188\3\2\2\2\u0188d\3\2\2\2\u0189\u018b\5\177@\2\u018a"+ + "\u018c\5i\65\2\u018b\u018a\3\2\2\2\u018b\u018c\3\2\2\2\u018cf\3\2\2\2"+ + "\u018d\u018f\5\u0087D\2\u018e\u0190\5i\65\2\u018f\u018e\3\2\2\2\u018f"+ + "\u0190\3\2\2\2\u0190h\3\2\2\2\u0191\u0192\t\2\2\2\u0192j\3\2\2\2\u0193"+ + "\u019e\7\62\2\2\u0194\u019b\5q9\2\u0195\u0197\5m\67\2\u0196\u0195\3\2"+ + "\2\2\u0196\u0197\3\2\2\2\u0197\u019c\3\2\2\2\u0198\u0199\5u;\2\u0199\u019a"+ + "\5m\67\2\u019a\u019c\3\2\2\2\u019b\u0196\3\2\2\2\u019b\u0198\3\2\2\2\u019c"+ + "\u019e\3\2\2\2\u019d\u0193\3\2\2\2\u019d\u0194\3\2\2\2\u019el\3\2\2\2"+ + "\u019f\u01a7\5o8\2\u01a0\u01a2\5s:\2\u01a1\u01a0\3\2\2\2\u01a2\u01a5\3"+ + "\2\2\2\u01a3\u01a1\3\2\2\2\u01a3\u01a4\3\2\2\2\u01a4\u01a6\3\2\2\2\u01a5"+ + "\u01a3\3\2\2\2\u01a6\u01a8\5o8\2\u01a7\u01a3\3\2\2\2\u01a7\u01a8\3\2\2"+ + "\2\u01a8n\3\2\2\2\u01a9\u01ac\7\62\2\2\u01aa\u01ac\5q9\2\u01ab\u01a9\3"+ + "\2\2\2\u01ab\u01aa\3\2\2\2\u01acp\3\2\2\2\u01ad\u01ae\t\3\2\2\u01aer\3"+ + "\2\2\2\u01af\u01b2\5o8\2\u01b0\u01b2\7a\2\2\u01b1\u01af\3\2\2\2\u01b1"+ + "\u01b0\3\2\2\2\u01b2t\3\2\2\2\u01b3\u01b5\7a\2\2\u01b4\u01b3\3\2\2\2\u01b5"+ + "\u01b6\3\2\2\2\u01b6\u01b4\3\2\2\2\u01b6\u01b7\3\2\2\2\u01b7v\3\2\2\2"+ + "\u01b8\u01b9\7\62\2\2\u01b9\u01ba\t\4\2\2\u01ba\u01bb\5y=\2\u01bbx\3\2"+ + "\2\2\u01bc\u01c4\5{>\2\u01bd\u01bf\5}?\2\u01be\u01bd\3\2\2\2\u01bf\u01c2"+ + "\3\2\2\2\u01c0\u01be\3\2\2\2\u01c0\u01c1\3\2\2\2\u01c1\u01c3\3\2\2\2\u01c2"+ + "\u01c0\3\2\2\2\u01c3\u01c5\5{>\2\u01c4\u01c0\3\2\2\2\u01c4\u01c5\3\2\2"+ + "\2\u01c5z\3\2\2\2\u01c6\u01c7\t\5\2\2\u01c7|\3\2\2\2\u01c8\u01cb\5{>\2"+ + "\u01c9\u01cb\7a\2\2\u01ca\u01c8\3\2\2\2\u01ca\u01c9\3\2\2\2\u01cb~\3\2"+ + "\2\2\u01cc\u01ce\7\62\2\2\u01cd\u01cf\5u;\2\u01ce\u01cd\3\2\2\2\u01ce"+ + "\u01cf\3\2\2\2\u01cf\u01d0\3\2\2\2\u01d0\u01d1\5\u0081A\2\u01d1\u0080"+ + "\3\2\2\2\u01d2\u01da\5\u0083B\2\u01d3\u01d5\5\u0085C\2\u01d4\u01d3\3\2"+ + "\2\2\u01d5\u01d8\3\2\2\2\u01d6\u01d4\3\2\2\2\u01d6\u01d7\3\2\2\2\u01d7"+ + "\u01d9\3\2\2\2\u01d8\u01d6\3\2\2\2\u01d9\u01db\5\u0083B\2\u01da\u01d6"+ + "\3\2\2\2\u01da\u01db\3\2\2\2\u01db\u0082\3\2\2\2\u01dc\u01dd\t\6\2\2\u01dd"+ + "\u0084\3\2\2\2\u01de\u01e1\5\u0083B\2\u01df\u01e1\7a\2\2\u01e0\u01de\3"+ + "\2\2\2\u01e0\u01df\3\2\2\2\u01e1\u0086\3\2\2\2\u01e2\u01e3\7\62\2\2\u01e3"+ + "\u01e4\t\7\2\2\u01e4\u01e5\5\u0089E\2\u01e5\u0088\3\2\2\2\u01e6\u01ee"+ + "\5\u008bF\2\u01e7\u01e9\5\u008dG\2\u01e8\u01e7\3\2\2\2\u01e9\u01ec\3\2"+ + "\2\2\u01ea\u01e8\3\2\2\2\u01ea\u01eb\3\2\2\2\u01eb\u01ed\3\2\2\2\u01ec"+ + "\u01ea\3\2\2\2\u01ed\u01ef\5\u008bF\2\u01ee\u01ea\3\2\2\2\u01ee\u01ef"+ + "\3\2\2\2\u01ef\u008a\3\2\2\2\u01f0\u01f1\t\b\2\2\u01f1\u008c\3\2\2\2\u01f2"+ + "\u01f5\5\u008bF\2\u01f3\u01f5\7a\2\2\u01f4\u01f2\3\2\2\2\u01f4\u01f3\3"+ + "\2\2\2\u01f5\u008e\3\2\2\2\u01f6\u01f9\5\u0091I\2\u01f7\u01f9\5\u009d"+ + "O\2\u01f8\u01f6\3\2\2\2\u01f8\u01f7\3\2\2\2\u01f9\u0090\3\2\2\2\u01fa"+ + "\u01fb\5m\67\2\u01fb\u01fd\7\60\2\2\u01fc\u01fe\5m\67\2\u01fd\u01fc\3"+ + "\2\2\2\u01fd\u01fe\3\2\2\2\u01fe\u0200\3\2\2\2\u01ff\u0201\5\u0093J\2"+ + "\u0200\u01ff\3\2\2\2\u0200\u0201\3\2\2\2\u0201\u0203\3\2\2\2\u0202\u0204"+ + "\5\u009bN\2\u0203\u0202\3\2\2\2\u0203\u0204\3\2\2\2\u0204\u0216\3\2\2"+ + "\2\u0205\u0206\7\60\2\2\u0206\u0208\5m\67\2\u0207\u0209\5\u0093J\2\u0208"+ + "\u0207\3\2\2\2\u0208\u0209\3\2\2\2\u0209\u020b\3\2\2\2\u020a\u020c\5\u009b"+ + "N\2\u020b\u020a\3\2\2\2\u020b\u020c\3\2\2\2\u020c\u0216\3\2\2\2\u020d"+ + "\u020e\5m\67\2\u020e\u0210\5\u0093J\2\u020f\u0211\5\u009bN\2\u0210\u020f"+ + "\3\2\2\2\u0210\u0211\3\2\2\2\u0211\u0216\3\2\2\2\u0212\u0213\5m\67\2\u0213"+ + "\u0214\5\u009bN\2\u0214\u0216\3\2\2\2\u0215\u01fa\3\2\2\2\u0215\u0205"+ + "\3\2\2\2\u0215\u020d\3\2\2\2\u0215\u0212\3\2\2\2\u0216\u0092\3\2\2\2\u0217"+ + "\u0218\5\u0095K\2\u0218\u0219\5\u0097L\2\u0219\u0094\3\2\2\2\u021a\u021b"+ + "\t\t\2\2\u021b\u0096\3\2\2\2\u021c\u021e\5\u0099M\2\u021d\u021c\3\2\2"+ + "\2\u021d\u021e\3\2\2\2\u021e\u021f\3\2\2\2\u021f\u0220\5m\67\2\u0220\u0098"+ + "\3\2\2\2\u0221\u0222\t\n\2\2\u0222\u009a\3\2\2\2\u0223\u0224\t\13\2\2"+ + "\u0224\u009c\3\2\2\2\u0225\u0226\5\u009fP\2\u0226\u0228\5\u00a1Q\2\u0227"+ + "\u0229\5\u009bN\2\u0228\u0227\3\2\2\2\u0228\u0229\3\2\2\2\u0229\u009e"+ + "\3\2\2\2\u022a\u022c\5w<\2\u022b\u022d\7\60\2\2\u022c\u022b\3\2\2\2\u022c"+ + "\u022d\3\2\2\2\u022d\u0236\3\2\2\2\u022e\u022f\7\62\2\2\u022f\u0231\t"+ + "\4\2\2\u0230\u0232\5y=\2\u0231\u0230\3\2\2\2\u0231\u0232\3\2\2\2\u0232"+ + "\u0233\3\2\2\2\u0233\u0234\7\60\2\2\u0234\u0236\5y=\2\u0235\u022a\3\2"+ + "\2\2\u0235\u022e\3\2\2\2\u0236\u00a0\3\2\2\2\u0237\u0238\5\u00a3R\2\u0238"+ + "\u0239\5\u0097L\2\u0239\u00a2\3\2\2\2\u023a\u023b\t\f\2\2\u023b\u00a4"+ + "\3\2\2\2\u023c\u023d\7v\2\2\u023d\u023e\7t\2\2\u023e\u023f\7w\2\2\u023f"+ + "\u0246\7g\2\2\u0240\u0241\7h\2\2\u0241\u0242\7c\2\2\u0242\u0243\7n\2\2"+ + "\u0243\u0244\7u\2\2\u0244\u0246\7g\2\2\u0245\u023c\3\2\2\2\u0245\u0240"+ + "\3\2\2\2\u0246\u00a6\3\2\2\2\u0247\u0248\7)\2\2\u0248\u0249\5\u00a9U\2"+ + "\u0249\u024a\7)\2\2\u024a\u0250\3\2\2\2\u024b\u024c\7)\2\2\u024c\u024d"+ + "\5\u00b5[\2\u024d\u024e\7)\2\2\u024e\u0250\3\2\2\2\u024f\u0247\3\2\2\2"+ + "\u024f\u024b\3\2\2\2\u0250\u00a8\3\2\2\2\u0251\u0252\n\r\2\2\u0252\u00aa"+ + "\3\2\2\2\u0253\u0257\7b\2\2\u0254\u0256\5\u00b3Z\2\u0255\u0254\3\2\2\2"+ + "\u0256\u0259\3\2\2\2\u0257\u0255\3\2\2\2\u0257\u0258\3\2\2\2\u0258\u025a"+ + "\3\2\2\2\u0259\u0257\3\2\2\2\u025a\u025b\7b\2\2\u025b\u00ac\3\2\2\2\u025c"+ + "\u025e\7$\2\2\u025d\u025f\5\u00afX\2\u025e\u025d\3\2\2\2\u025e\u025f\3"+ + "\2\2\2\u025f\u0260\3\2\2\2\u0260\u0261\7$\2\2\u0261\u00ae\3\2\2\2\u0262"+ + "\u0264\5\u00b1Y\2\u0263\u0262\3\2\2\2\u0264\u0265\3\2\2\2\u0265\u0263"+ + "\3\2\2\2\u0265\u0266\3\2\2\2\u0266\u00b0\3\2\2\2\u0267\u026a\n\16\2\2"+ + "\u0268\u026a\5\u00b5[\2\u0269\u0267\3\2\2\2\u0269\u0268\3\2\2\2\u026a"+ + "\u00b2\3\2\2\2\u026b\u026e\n\17\2\2\u026c\u026e\5\u00b5[\2\u026d\u026b"+ + "\3\2\2\2\u026d\u026c\3\2\2\2\u026e\u00b4\3\2\2\2\u026f\u0270\7^\2\2\u0270"+ + "\u0274\t\20\2\2\u0271\u0274\5\u00b7\\\2\u0272\u0274\5\u00b9]\2\u0273\u026f"+ + "\3\2\2\2\u0273\u0271\3\2\2\2\u0273\u0272\3\2\2\2\u0274\u00b6\3\2\2\2\u0275"+ + "\u0276\7^\2\2\u0276\u0281\5\u0083B\2\u0277\u0278\7^\2\2\u0278\u0279\5"+ + "\u0083B\2\u0279\u027a\5\u0083B\2\u027a\u0281\3\2\2\2\u027b\u027c\7^\2"+ + "\2\u027c\u027d\5\u00bb^\2\u027d\u027e\5\u0083B\2\u027e\u027f\5\u0083B"+ + "\2\u027f\u0281\3\2\2\2\u0280\u0275\3\2\2\2\u0280\u0277\3\2\2\2\u0280\u027b"+ + "\3\2\2\2\u0281\u00b8\3\2\2\2\u0282\u0283\7^\2\2\u0283\u0284\7w\2\2\u0284"+ + "\u0285\5{>\2\u0285\u0286\5{>\2\u0286\u0287\5{>\2\u0287\u0288\5{>\2\u0288"+ + "\u00ba\3\2\2\2\u0289\u028a\t\21\2\2\u028a\u00bc\3\2\2\2\u028b\u028c\7"+ + "p\2\2\u028c\u028d\7w\2\2\u028d\u028e\7n\2\2\u028e\u028f\7n\2\2\u028f\u00be"+ + "\3\2\2\2\u0290\u0294\5\u00c1a\2\u0291\u0293\5\u00c3b\2\u0292\u0291\3\2"+ + "\2\2\u0293\u0296\3\2\2\2\u0294\u0292\3\2\2\2\u0294\u0295\3\2\2\2\u0295"+ + "\u00c0\3\2\2\2\u0296\u0294\3\2\2\2\u0297\u029e\t\22\2\2\u0298\u0299\n"+ + "\23\2\2\u0299\u029e\6a\2\2\u029a\u029b\t\24\2\2\u029b\u029c\t\25\2\2\u029c"+ + "\u029e\6a\3\2\u029d\u0297\3\2\2\2\u029d\u0298\3\2\2\2\u029d\u029a\3\2"+ + "\2\2\u029e\u00c2\3\2\2\2\u029f\u02a6\t\26\2\2\u02a0\u02a1\n\23\2\2\u02a1"+ + "\u02a6\6b\4\2\u02a2\u02a3\t\24\2\2\u02a3\u02a4\t\25\2\2\u02a4\u02a6\6"+ + "b\5\2\u02a5\u029f\3\2\2\2\u02a5\u02a0\3\2\2\2\u02a5\u02a2\3\2\2\2\u02a6"+ + "\u00c4\3\2\2\2\u02a7\u02a9\t\27\2\2\u02a8\u02a7\3\2\2\2\u02a9\u02aa\3"+ + "\2\2\2\u02aa\u02a8\3\2\2\2\u02aa\u02ab\3\2\2\2\u02ab\u02ac\3\2\2\2\u02ac"+ + "\u02ad\bc\2\2\u02ad\u00c6\3\2\2\2\u02ae\u02b2\7B\2\2\u02af\u02b0\5\u00c9"+ + "e\2\u02b0\u02b1\7<\2\2\u02b1\u02b3\3\2\2\2\u02b2\u02af\3\2\2\2\u02b2\u02b3"+ + "\3\2\2\2\u02b3\u02b4\3\2\2\2\u02b4\u02b5\5\u00cbf\2\u02b5\u02b6\7\61\2"+ + "\2\u02b6\u02b7\5\u00bf`\2\u02b7\u00c8\3\2\2\2\u02b8\u02b9\7c\2\2\u02b9"+ + "\u02ba\7p\2\2\u02ba\u02bb\7f\2\2\u02bb\u02bc\7t\2\2\u02bc\u02bd\7q\2\2"+ + "\u02bd\u02be\7k\2\2\u02be\u02c1\7f\2\2\u02bf\u02c1\5\u00bf`\2\u02c0\u02b8"+ + "\3\2\2\2\u02c0\u02bf\3\2\2\2\u02c1\u00ca\3\2\2\2\u02c2\u02c3\7c\2\2\u02c3"+ + "\u02c4\7p\2\2\u02c4\u02c5\7k\2\2\u02c5\u036f\7o\2\2\u02c6\u02c7\7c\2\2"+ + "\u02c7\u02c8\7p\2\2\u02c8\u02c9\7k\2\2\u02c9\u02ca\7o\2\2\u02ca\u02cb"+ + "\7c\2\2\u02cb\u02cc\7v\2\2\u02cc\u02cd\7q\2\2\u02cd\u036f\7t\2\2\u02ce"+ + "\u02cf\7d\2\2\u02cf\u02d0\7q\2\2\u02d0\u02d1\7q\2\2\u02d1\u036f\7n\2\2"+ + "\u02d2\u02d3\7e\2\2\u02d3\u02d4\7q\2\2\u02d4\u02d5\7n\2\2\u02d5\u02d6"+ + "\7q\2\2\u02d6\u036f\7t\2\2\u02d7\u02d8\7e\2\2\u02d8\u02d9\7q\2\2\u02d9"+ + "\u02da\7n\2\2\u02da\u02db\7q\2\2\u02db\u02dc\7t\2\2\u02dc\u02dd\7U\2\2"+ + "\u02dd\u02de\7v\2\2\u02de\u02df\7c\2\2\u02df\u02e0\7v\2\2\u02e0\u02e1"+ + "\7g\2\2\u02e1\u02e2\7N\2\2\u02e2\u02e3\7k\2\2\u02e3\u02e4\7u\2\2\u02e4"+ + "\u036f\7v\2\2\u02e5\u02e6\7f\2\2\u02e6\u02e7\7k\2\2\u02e7\u02e8\7o\2\2"+ + "\u02e8\u02e9\7g\2\2\u02e9\u036f\7p\2\2\u02ea\u02eb\7f\2\2\u02eb\u02ec"+ + "\7k\2\2\u02ec\u02ed\7o\2\2\u02ed\u02ee\7g\2\2\u02ee\u02ef\7p\2\2\u02ef"+ + "\u02f0\7Q\2\2\u02f0\u02f1\7h\2\2\u02f1\u02f2\7h\2\2\u02f2\u02f3\7u\2\2"+ + "\u02f3\u02f4\7g\2\2\u02f4\u036f\7v\2\2\u02f5\u02f6\7f\2\2\u02f6\u02f7"+ + "\7k\2\2\u02f7\u02f8\7o\2\2\u02f8\u02f9\7g\2\2\u02f9\u02fa\7p\2\2\u02fa"+ + "\u02fb\7U\2\2\u02fb\u02fc\7k\2\2\u02fc\u02fd\7|\2\2\u02fd\u036f\7g\2\2"+ + "\u02fe\u02ff\7f\2\2\u02ff\u0300\7t\2\2\u0300\u0301\7c\2\2\u0301\u0302"+ + "\7y\2\2\u0302\u0303\7c\2\2\u0303\u0304\7d\2\2\u0304\u0305\7n\2\2\u0305"+ + "\u036f\7g\2\2\u0306\u0307\7h\2\2\u0307\u0308\7t\2\2\u0308\u0309\7c\2\2"+ + "\u0309\u030a\7e\2\2\u030a\u030b\7v\2\2\u030b\u030c\7k\2\2\u030c\u030d"+ + "\7q\2\2\u030d\u036f\7p\2\2\u030e\u030f\7k\2\2\u030f\u036f\7f\2\2\u0310"+ + "\u0311\7k\2\2\u0311\u0312\7p\2\2\u0312\u0313\7v\2\2\u0313\u0314\7g\2\2"+ + "\u0314\u0315\7i\2\2\u0315\u0316\7g\2\2\u0316\u036f\7t\2\2\u0317\u0318"+ + "\7k\2\2\u0318\u0319\7p\2\2\u0319\u031a\7v\2\2\u031a\u031b\7C\2\2\u031b"+ + "\u031c\7t\2\2\u031c\u031d\7t\2\2\u031d\u031e\7c\2\2\u031e\u036f\7{\2\2"+ + "\u031f\u0320\7k\2\2\u0320\u0321\7p\2\2\u0321\u0322\7v\2\2\u0322\u0323"+ + "\7g\2\2\u0323\u0324\7t\2\2\u0324\u0325\7r\2\2\u0325\u0326\7q\2\2\u0326"+ + "\u0327\7n\2\2\u0327\u0328\7c\2\2\u0328\u0329\7v\2\2\u0329\u032a\7q\2\2"+ + "\u032a\u036f\7t\2\2\u032b\u032c\7n\2\2\u032c\u032d\7c\2\2\u032d\u032e"+ + "\7{\2\2\u032e\u032f\7q\2\2\u032f\u0330\7w\2\2\u0330\u036f\7v\2\2\u0331"+ + "\u0332\7r\2\2\u0332\u0333\7n\2\2\u0333\u0334\7w\2\2\u0334\u0335\7t\2\2"+ + "\u0335\u0336\7c\2\2\u0336\u0337\7n\2\2\u0337\u036f\7u\2\2\u0338\u0339"+ + "\7u\2\2\u0339\u033a\7v\2\2\u033a\u033b\7c\2\2\u033b\u033c\7v\2\2\u033c"+ + "\u033d\7g\2\2\u033d\u033e\7N\2\2\u033e\u033f\7k\2\2\u033f\u0340\7u\2\2"+ + "\u0340\u0341\7v\2\2\u0341\u0342\7C\2\2\u0342\u0343\7p\2\2\u0343\u0344"+ + "\7k\2\2\u0344\u0345\7o\2\2\u0345\u0346\7c\2\2\u0346\u0347\7v\2\2\u0347"+ + "\u0348\7q\2\2\u0348\u036f\7t\2\2\u0349\u034a\7u\2\2\u034a\u034b\7v\2\2"+ + "\u034b\u034c\7t\2\2\u034c\u034d\7k\2\2\u034d\u034e\7p\2\2\u034e\u036f"+ + "\7i\2\2\u034f\u0350\7u\2\2\u0350\u0351\7v\2\2\u0351\u0352\7t\2\2\u0352"+ + "\u0353\7k\2\2\u0353\u0354\7p\2\2\u0354\u0355\7i\2\2\u0355\u0356\7C\2\2"+ + "\u0356\u0357\7t\2\2\u0357\u0358\7t\2\2\u0358\u0359\7c\2\2\u0359\u036f"+ + "\7{\2\2\u035a\u035b\7v\2\2\u035b\u035c\7t\2\2\u035c\u035d\7c\2\2\u035d"+ + "\u035e\7p\2\2\u035e\u035f\7u\2\2\u035f\u0360\7k\2\2\u0360\u0361\7v\2\2"+ + "\u0361\u0362\7k\2\2\u0362\u0363\7q\2\2\u0363\u036f\7p\2\2\u0364\u0365"+ + "\7v\2\2\u0365\u0366\7{\2\2\u0366\u0367\7r\2\2\u0367\u0368\7g\2\2\u0368"+ + "\u0369\7f\2\2\u0369\u036a\7C\2\2\u036a\u036b\7t\2\2\u036b\u036c\7t\2\2"+ + "\u036c\u036d\7c\2\2\u036d\u036f\7{\2\2\u036e\u02c2\3\2\2\2\u036e\u02c6"+ + "\3\2\2\2\u036e\u02ce\3\2\2\2\u036e\u02d2\3\2\2\2\u036e\u02d7\3\2\2\2\u036e"+ + "\u02e5\3\2\2\2\u036e\u02ea\3\2\2\2\u036e\u02f5\3\2\2\2\u036e\u02fe\3\2"+ + "\2\2\u036e\u0306\3\2\2\2\u036e\u030e\3\2\2\2\u036e\u0310\3\2\2\2\u036e"+ + "\u0317\3\2\2\2\u036e\u031f\3\2\2\2\u036e\u032b\3\2\2\2\u036e\u0331\3\2"+ + "\2\2\u036e\u0338\3\2\2\2\u036e\u0349\3\2\2\2\u036e\u034f\3\2\2\2\u036e"+ + "\u035a\3\2\2\2\u036e\u0364\3\2\2\2\u036f\u00cc\3\2\2\28\2\u0179\u017f"+ + "\u0183\u0187\u018b\u018f\u0196\u019b\u019d\u01a3\u01a7\u01ab\u01b1\u01b6"+ + "\u01c0\u01c4\u01ca\u01ce\u01d6\u01da\u01e0\u01ea\u01ee\u01f4\u01f8\u01fd"+ + "\u0200\u0203\u0208\u020b\u0210\u0215\u021d\u0228\u022c\u0231\u0235\u0245"+ + "\u024f\u0257\u025e\u0265\u0269\u026d\u0273\u0280\u0294\u029d\u02a5\u02aa"+ + "\u02b2\u02c0\u036e\3\b\2\2"; public static final ATN _ATN = new ATNDeserializer().deserialize(_serializedATN.toCharArray()); static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } }
\ No newline at end of file diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionListener.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionListener.java index 29edb7cb..23d2d84b 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionListener.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionListener.java @@ -1,7 +1,5 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ParseTreeListener; /** @@ -10,517 +8,445 @@ import org.antlr.v4.runtime.tree.ParseTreeListener; */ public interface BindingExpressionListener extends ParseTreeListener { /** - * Enter a parse tree produced by the {@code CastOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by the {@code RootExpr} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree */ - void enterCastOp(@NotNull BindingExpressionParser.CastOpContext ctx); + void enterRootExpr(BindingExpressionParser.RootExprContext ctx); /** - * Exit a parse tree produced by the {@code CastOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by the {@code RootExpr} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree */ - void exitCastOp(@NotNull BindingExpressionParser.CastOpContext ctx); - + void exitRootExpr(BindingExpressionParser.RootExprContext ctx); /** - * Enter a parse tree produced by the {@code ComparisonOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by the {@code RootLambda} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree */ - void enterComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx); + void enterRootLambda(BindingExpressionParser.RootLambdaContext ctx); /** - * Exit a parse tree produced by the {@code ComparisonOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by the {@code RootLambda} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree */ - void exitComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx); - + void exitRootLambda(BindingExpressionParser.RootLambdaContext ctx); /** - * Enter a parse tree produced by the {@code BracketOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by {@link BindingExpressionParser#defaults}. * @param ctx the parse tree */ - void enterBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx); + void enterDefaults(BindingExpressionParser.DefaultsContext ctx); /** - * Exit a parse tree produced by the {@code BracketOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by {@link BindingExpressionParser#defaults}. * @param ctx the parse tree */ - void exitBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx); - + void exitDefaults(BindingExpressionParser.DefaultsContext ctx); /** - * Enter a parse tree produced by the {@code UnaryOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by {@link BindingExpressionParser#constantValue}. * @param ctx the parse tree */ - void enterUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx); + void enterConstantValue(BindingExpressionParser.ConstantValueContext ctx); /** - * Exit a parse tree produced by the {@code UnaryOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by {@link BindingExpressionParser#constantValue}. * @param ctx the parse tree */ - void exitUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx); - + void exitConstantValue(BindingExpressionParser.ConstantValueContext ctx); /** - * Enter a parse tree produced by the {@code Resource} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. * @param ctx the parse tree */ - void enterResource(@NotNull BindingExpressionParser.ResourceContext ctx); + void enterLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx); /** - * Exit a parse tree produced by the {@code Resource} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. * @param ctx the parse tree */ - void exitResource(@NotNull BindingExpressionParser.ResourceContext ctx); - + void exitLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx); /** - * Enter a parse tree produced by the {@code QuestionQuestionOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by the {@code SingleLambdaParameter} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree */ - void enterQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx); + void enterSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx); /** - * Exit a parse tree produced by the {@code QuestionQuestionOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by the {@code SingleLambdaParameter} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree */ - void exitQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx); - + void exitSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx); /** - * Enter a parse tree produced by the {@code Grouping} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by the {@code LambdaParameterList} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree */ - void enterGrouping(@NotNull BindingExpressionParser.GroupingContext ctx); + void enterLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx); /** - * Exit a parse tree produced by the {@code Grouping} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by the {@code LambdaParameterList} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree */ - void exitGrouping(@NotNull BindingExpressionParser.GroupingContext ctx); - + void exitLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx); /** - * Enter a parse tree produced by the {@code MethodInvocation} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. * @param ctx the parse tree */ - void enterMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx); + void enterInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx); /** - * Exit a parse tree produced by the {@code MethodInvocation} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. * @param ctx the parse tree */ - void exitMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx); - + void exitInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx); /** - * Enter a parse tree produced by the {@code BitShiftOp} + * Enter a parse tree produced by the {@code CastOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx); + void enterCastOp(BindingExpressionParser.CastOpContext ctx); /** - * Exit a parse tree produced by the {@code BitShiftOp} + * Exit a parse tree produced by the {@code CastOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx); - + void exitCastOp(BindingExpressionParser.CastOpContext ctx); /** - * Enter a parse tree produced by the {@code AndOrOp} + * Enter a parse tree produced by the {@code ComparisonOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx); + void enterComparisonOp(BindingExpressionParser.ComparisonOpContext ctx); /** - * Exit a parse tree produced by the {@code AndOrOp} + * Exit a parse tree produced by the {@code ComparisonOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx); - + void exitComparisonOp(BindingExpressionParser.ComparisonOpContext ctx); /** - * Enter a parse tree produced by the {@code TernaryOp} + * Enter a parse tree produced by the {@code UnaryOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx); + void enterUnaryOp(BindingExpressionParser.UnaryOpContext ctx); /** - * Exit a parse tree produced by the {@code TernaryOp} + * Exit a parse tree produced by the {@code UnaryOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx); - + void exitUnaryOp(BindingExpressionParser.UnaryOpContext ctx); /** - * Enter a parse tree produced by the {@code Primary} + * Enter a parse tree produced by the {@code BracketOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx); + void enterBracketOp(BindingExpressionParser.BracketOpContext ctx); /** - * Exit a parse tree produced by the {@code Primary} + * Exit a parse tree produced by the {@code BracketOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx); - + void exitBracketOp(BindingExpressionParser.BracketOpContext ctx); /** - * Enter a parse tree produced by the {@code DotOp} + * Enter a parse tree produced by the {@code Resource} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterDotOp(@NotNull BindingExpressionParser.DotOpContext ctx); + void enterResource(BindingExpressionParser.ResourceContext ctx); /** - * Exit a parse tree produced by the {@code DotOp} + * Exit a parse tree produced by the {@code Resource} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitDotOp(@NotNull BindingExpressionParser.DotOpContext ctx); - + void exitResource(BindingExpressionParser.ResourceContext ctx); /** - * Enter a parse tree produced by the {@code MathOp} + * Enter a parse tree produced by the {@code QuestionQuestionOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterMathOp(@NotNull BindingExpressionParser.MathOpContext ctx); + void enterQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx); /** - * Exit a parse tree produced by the {@code MathOp} + * Exit a parse tree produced by the {@code QuestionQuestionOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitMathOp(@NotNull BindingExpressionParser.MathOpContext ctx); - + void exitQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx); /** - * Enter a parse tree produced by the {@code InstanceOfOp} + * Enter a parse tree produced by the {@code Grouping} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx); + void enterGrouping(BindingExpressionParser.GroupingContext ctx); /** - * Exit a parse tree produced by the {@code InstanceOfOp} + * Exit a parse tree produced by the {@code Grouping} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx); - + void exitGrouping(BindingExpressionParser.GroupingContext ctx); /** - * Enter a parse tree produced by the {@code FunctionRef} + * Enter a parse tree produced by the {@code MethodInvocation} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx); + void enterMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx); /** - * Exit a parse tree produced by the {@code FunctionRef} + * Exit a parse tree produced by the {@code MethodInvocation} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx); - + void exitMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx); /** - * Enter a parse tree produced by the {@code BinaryOp} + * Enter a parse tree produced by the {@code BitShiftOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx); + void enterBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx); /** - * Exit a parse tree produced by the {@code BinaryOp} + * Exit a parse tree produced by the {@code BitShiftOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx); - - /** - * Enter a parse tree produced by the {@code RootExpr} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - */ - void enterRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx); - /** - * Exit a parse tree produced by the {@code RootExpr} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - */ - void exitRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx); - - /** - * Enter a parse tree produced by the {@code RootLambda} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - */ - void enterRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx); - /** - * Exit a parse tree produced by the {@code RootLambda} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - */ - void exitRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx); - + void exitBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx); /** - * Enter a parse tree produced by the {@code SingleLambdaParameter} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. - * @param ctx the parse tree - */ - void enterSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx); - /** - * Exit a parse tree produced by the {@code SingleLambdaParameter} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. - * @param ctx the parse tree - */ - void exitSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx); - - /** - * Enter a parse tree produced by the {@code LambdaParameterList} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. + * Enter a parse tree produced by the {@code AndOrOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx); + void enterAndOrOp(BindingExpressionParser.AndOrOpContext ctx); /** - * Exit a parse tree produced by the {@code LambdaParameterList} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. + * Exit a parse tree produced by the {@code AndOrOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx); - + void exitAndOrOp(BindingExpressionParser.AndOrOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#bindingSyntax}. + * Enter a parse tree produced by the {@code TernaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx); + void enterTernaryOp(BindingExpressionParser.TernaryOpContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#bindingSyntax}. + * Exit a parse tree produced by the {@code TernaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx); - + void exitTernaryOp(BindingExpressionParser.TernaryOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#defaults}. + * Enter a parse tree produced by the {@code Primary} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx); + void enterPrimary(BindingExpressionParser.PrimaryContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#defaults}. + * Exit a parse tree produced by the {@code Primary} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx); - + void exitPrimary(BindingExpressionParser.PrimaryContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#constantValue}. + * Enter a parse tree produced by the {@code DotOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx); + void enterDotOp(BindingExpressionParser.DotOpContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#constantValue}. + * Exit a parse tree produced by the {@code DotOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx); - + void exitDotOp(BindingExpressionParser.DotOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. + * Enter a parse tree produced by the {@code MathOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx); + void enterMathOp(BindingExpressionParser.MathOpContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. + * Exit a parse tree produced by the {@code MathOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx); - + void exitMathOp(BindingExpressionParser.MathOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#lambdaParameters}. + * Enter a parse tree produced by the {@code InstanceOfOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx); + void enterInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#lambdaParameters}. + * Exit a parse tree produced by the {@code InstanceOfOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx); - + void exitInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. + * Enter a parse tree produced by the {@code BinaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx); + void enterBinaryOp(BindingExpressionParser.BinaryOpContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. + * Exit a parse tree produced by the {@code BinaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx); - + void exitBinaryOp(BindingExpressionParser.BinaryOpContext ctx); /** - * Enter a parse tree produced by {@link BindingExpressionParser#expression}. + * Enter a parse tree produced by the {@code FunctionRef} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void enterExpression(@NotNull BindingExpressionParser.ExpressionContext ctx); + void enterFunctionRef(BindingExpressionParser.FunctionRefContext ctx); /** - * Exit a parse tree produced by {@link BindingExpressionParser#expression}. + * Exit a parse tree produced by the {@code FunctionRef} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree */ - void exitExpression(@NotNull BindingExpressionParser.ExpressionContext ctx); - + void exitFunctionRef(BindingExpressionParser.FunctionRefContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#classExtraction}. * @param ctx the parse tree */ - void enterClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx); + void enterClassExtraction(BindingExpressionParser.ClassExtractionContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#classExtraction}. * @param ctx the parse tree */ - void exitClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx); - + void exitClassExtraction(BindingExpressionParser.ClassExtractionContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#expressionList}. * @param ctx the parse tree */ - void enterExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx); + void enterExpressionList(BindingExpressionParser.ExpressionListContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#expressionList}. * @param ctx the parse tree */ - void exitExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx); - + void exitExpressionList(BindingExpressionParser.ExpressionListContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#literal}. * @param ctx the parse tree */ - void enterLiteral(@NotNull BindingExpressionParser.LiteralContext ctx); + void enterLiteral(BindingExpressionParser.LiteralContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#literal}. * @param ctx the parse tree */ - void exitLiteral(@NotNull BindingExpressionParser.LiteralContext ctx); - + void exitLiteral(BindingExpressionParser.LiteralContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#identifier}. * @param ctx the parse tree */ - void enterIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx); + void enterIdentifier(BindingExpressionParser.IdentifierContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#identifier}. * @param ctx the parse tree */ - void exitIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx); - + void exitIdentifier(BindingExpressionParser.IdentifierContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#javaLiteral}. * @param ctx the parse tree */ - void enterJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx); + void enterJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#javaLiteral}. * @param ctx the parse tree */ - void exitJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx); - + void exitJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#stringLiteral}. * @param ctx the parse tree */ - void enterStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx); + void enterStringLiteral(BindingExpressionParser.StringLiteralContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#stringLiteral}. * @param ctx the parse tree */ - void exitStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx); - + void exitStringLiteral(BindingExpressionParser.StringLiteralContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocation}. * @param ctx the parse tree */ - void enterExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx); + void enterExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocation}. * @param ctx the parse tree */ - void exitExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx); - + void exitExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#typeArguments}. * @param ctx the parse tree */ - void enterTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx); + void enterTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#typeArguments}. * @param ctx the parse tree */ - void exitTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx); - + void exitTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#type}. * @param ctx the parse tree */ - void enterType(@NotNull BindingExpressionParser.TypeContext ctx); + void enterType(BindingExpressionParser.TypeContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#type}. * @param ctx the parse tree */ - void exitType(@NotNull BindingExpressionParser.TypeContext ctx); - + void exitType(BindingExpressionParser.TypeContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocationSuffix}. * @param ctx the parse tree */ - void enterExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); + void enterExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocationSuffix}. * @param ctx the parse tree */ - void exitExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); - + void exitExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#arguments}. * @param ctx the parse tree */ - void enterArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx); + void enterArguments(BindingExpressionParser.ArgumentsContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#arguments}. * @param ctx the parse tree */ - void exitArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx); - + void exitArguments(BindingExpressionParser.ArgumentsContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#classOrInterfaceType}. * @param ctx the parse tree */ - void enterClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx); + void enterClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#classOrInterfaceType}. * @param ctx the parse tree */ - void exitClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx); - + void exitClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#primitiveType}. * @param ctx the parse tree */ - void enterPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx); + void enterPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#primitiveType}. * @param ctx the parse tree */ - void exitPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx); - + void exitPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#resources}. * @param ctx the parse tree */ - void enterResources(@NotNull BindingExpressionParser.ResourcesContext ctx); + void enterResources(BindingExpressionParser.ResourcesContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#resources}. * @param ctx the parse tree */ - void exitResources(@NotNull BindingExpressionParser.ResourcesContext ctx); - + void exitResources(BindingExpressionParser.ResourcesContext ctx); /** * Enter a parse tree produced by {@link BindingExpressionParser#resourceParameters}. * @param ctx the parse tree */ - void enterResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx); + void enterResourceParameters(BindingExpressionParser.ResourceParametersContext ctx); /** * Exit a parse tree produced by {@link BindingExpressionParser#resourceParameters}. * @param ctx the parse tree */ - void exitResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx); + void exitResourceParameters(BindingExpressionParser.ResourceParametersContext ctx); }
\ No newline at end of file diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionParser.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionParser.java index ece7caad..9633908f 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionParser.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionParser.java @@ -1,27 +1,21 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.FailedPredicateException; -import org.antlr.v4.runtime.NoViableAltException; -import org.antlr.v4.runtime.Parser; -import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.RecognitionException; -import org.antlr.v4.runtime.RuleContext; -import org.antlr.v4.runtime.RuleVersion; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.TokenStream; -import org.antlr.v4.runtime.Vocabulary; -import org.antlr.v4.runtime.VocabularyImpl; -import org.antlr.v4.runtime.atn.ATN; -import org.antlr.v4.runtime.atn.ATNDeserializer; -import org.antlr.v4.runtime.atn.ParserATNSimulator; -import org.antlr.v4.runtime.misc.NotNull; -import org.antlr.v4.runtime.tree.ParseTreeListener; -import org.antlr.v4.runtime.tree.ParseTreeVisitor; -import org.antlr.v4.runtime.tree.TerminalNode; - +import org.antlr.v4.runtime.atn.*; +import org.antlr.v4.runtime.dfa.DFA; +import org.antlr.v4.runtime.*; +import org.antlr.v4.runtime.misc.*; +import org.antlr.v4.runtime.tree.*; import java.util.List; +import java.util.Iterator; +import java.util.ArrayList; +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) public class BindingExpressionParser extends Parser { + static { RuntimeMetaData.checkVersion("4.5.3", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9, T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17, @@ -93,7 +87,7 @@ public class BindingExpressionParser extends Parser { } @Override - @NotNull + public Vocabulary getVocabulary() { return VOCABULARY; } @@ -107,9 +101,12 @@ public class BindingExpressionParser extends Parser { @Override public String getSerializedATN() { return _serializedATN; } + @Override + public ATN getATN() { return _ATN; } + public BindingExpressionParser(TokenStream input) { super(input); - _interp = new ParserATNSimulator(this,_ATN); + _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); } public static class BindingSyntaxContext extends ParserRuleContext { public BindingSyntaxContext(ParserRuleContext parent, int invokingState) { @@ -139,8 +136,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitRootExpr(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitRootExpr(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitRootExpr(this); else return visitor.visitChildren(this); } } @@ -158,19 +155,19 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitRootLambda(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitRootLambda(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitRootLambda(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final BindingSyntaxContext bindingSyntax() throws RecognitionException { BindingSyntaxContext _localctx = new BindingSyntaxContext(_ctx, getState()); enterRule(_localctx, 0, RULE_bindingSyntax); int _la; try { setState(49); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,1,_ctx) ) { case 1: _localctx = new RootExprContext(_localctx); @@ -189,7 +186,6 @@ public class BindingExpressionParser extends Parser { } break; - case 2: _localctx = new RootLambdaContext(_localctx); enterOuterAlt(_localctx, 2); @@ -228,13 +224,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitDefaults(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitDefaults(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitDefaults(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final DefaultsContext defaults() throws RecognitionException { DefaultsContext _localctx = new DefaultsContext(_ctx, getState()); enterRule(_localctx, 2, RULE_defaults); @@ -283,13 +278,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitConstantValue(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitConstantValue(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitConstantValue(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ConstantValueContext constantValue() throws RecognitionException { ConstantValueContext _localctx = new ConstantValueContext(_ctx, getState()); enterRule(_localctx, 4, RULE_constantValue); @@ -360,13 +354,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitLambdaExpression(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitLambdaExpression(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitLambdaExpression(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final LambdaExpressionContext lambdaExpression() throws RecognitionException { LambdaExpressionContext _localctx = new LambdaExpressionContext(_ctx, getState()); enterRule(_localctx, 6, RULE_lambdaExpression); @@ -374,11 +367,11 @@ public class BindingExpressionParser extends Parser { enterOuterAlt(_localctx, 1); { setState(61); - _localctx.args = lambdaParameters(); + ((LambdaExpressionContext)_localctx).args = lambdaParameters(); setState(62); match(T__3); setState(63); - _localctx.expr = expression(0); + ((LambdaExpressionContext)_localctx).expr = expression(0); } } catch (RecognitionException re) { @@ -415,8 +408,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitSingleLambdaParameter(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitSingleLambdaParameter(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitSingleLambdaParameter(this); else return visitor.visitChildren(this); } } @@ -435,13 +428,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitLambdaParameterList(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitLambdaParameterList(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitLambdaParameterList(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final LambdaParametersContext lambdaParameters() throws RecognitionException { LambdaParametersContext _localctx = new LambdaParametersContext(_ctx, getState()); enterRule(_localctx, 8, RULE_lambdaParameters); @@ -492,7 +484,7 @@ public class BindingExpressionParser extends Parser { } public static class InferredFormalParameterListContext extends ParserRuleContext { - public List<? extends TerminalNode> Identifier() { return getTokens(BindingExpressionParser.Identifier); } + public List<TerminalNode> Identifier() { return getTokens(BindingExpressionParser.Identifier); } public TerminalNode Identifier(int i) { return getToken(BindingExpressionParser.Identifier, i); } @@ -509,13 +501,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitInferredFormalParameterList(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitInferredFormalParameterList(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitInferredFormalParameterList(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final InferredFormalParameterListContext inferredFormalParameterList() throws RecognitionException { InferredFormalParameterListContext _localctx = new InferredFormalParameterListContext(_ctx, getState()); enterRule(_localctx, 10, RULE_inferredFormalParameterList); @@ -582,8 +573,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitCastOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitCastOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitCastOp(this); else return visitor.visitChildren(this); } } @@ -591,7 +582,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -607,50 +598,50 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitComparisonOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitComparisonOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitComparisonOp(this); else return visitor.visitChildren(this); } } - public static class BracketOpContext extends ExpressionContext { - public List<? extends ExpressionContext> expression() { - return getRuleContexts(ExpressionContext.class); - } - public ExpressionContext expression(int i) { - return getRuleContext(ExpressionContext.class,i); + public static class UnaryOpContext extends ExpressionContext { + public Token op; + public ExpressionContext expression() { + return getRuleContext(ExpressionContext.class,0); } - public BracketOpContext(ExpressionContext ctx) { copyFrom(ctx); } + public UnaryOpContext(ExpressionContext ctx) { copyFrom(ctx); } @Override public void enterRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterBracketOp(this); + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterUnaryOp(this); } @Override public void exitRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitBracketOp(this); + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitUnaryOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitBracketOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitUnaryOp(this); else return visitor.visitChildren(this); } } - public static class UnaryOpContext extends ExpressionContext { - public Token op; - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); + public static class BracketOpContext extends ExpressionContext { + public List<ExpressionContext> expression() { + return getRuleContexts(ExpressionContext.class); } - public UnaryOpContext(ExpressionContext ctx) { copyFrom(ctx); } + public ExpressionContext expression(int i) { + return getRuleContext(ExpressionContext.class,i); + } + public BracketOpContext(ExpressionContext ctx) { copyFrom(ctx); } @Override public void enterRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterUnaryOp(this); + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterBracketOp(this); } @Override public void exitRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitUnaryOp(this); + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitBracketOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitUnaryOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitBracketOp(this); else return visitor.visitChildren(this); } } @@ -668,8 +659,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitResource(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitResource(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitResource(this); else return visitor.visitChildren(this); } } @@ -677,7 +668,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -693,8 +684,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitQuestionQuestionOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitQuestionQuestionOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitQuestionQuestionOp(this); else return visitor.visitChildren(this); } } @@ -712,8 +703,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitGrouping(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitGrouping(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitGrouping(this); else return visitor.visitChildren(this); } } @@ -738,8 +729,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitMethodInvocation(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitMethodInvocation(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitMethodInvocation(this); else return visitor.visitChildren(this); } } @@ -747,7 +738,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -763,8 +754,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitBitShiftOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitBitShiftOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitBitShiftOp(this); else return visitor.visitChildren(this); } } @@ -772,7 +763,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -788,8 +779,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitAndOrOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitAndOrOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitAndOrOp(this); else return visitor.visitChildren(this); } } @@ -798,7 +789,7 @@ public class BindingExpressionParser extends Parser { public Token op; public ExpressionContext iftrue; public ExpressionContext iffalse; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -814,8 +805,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitTernaryOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitTernaryOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitTernaryOp(this); else return visitor.visitChildren(this); } } @@ -840,8 +831,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitPrimary(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitPrimary(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitPrimary(this); else return visitor.visitChildren(this); } } @@ -860,8 +851,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitDotOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitDotOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitDotOp(this); else return visitor.visitChildren(this); } } @@ -869,7 +860,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -885,8 +876,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitMathOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitMathOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitMathOp(this); else return visitor.visitChildren(this); } } @@ -907,28 +898,8 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitInstanceOfOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitInstanceOfOp(this); - else return visitor.visitChildren(this); - } - } - public static class FunctionRefContext extends ExpressionContext { - public ExpressionContext expression() { - return getRuleContext(ExpressionContext.class,0); - } - public TerminalNode Identifier() { return getToken(BindingExpressionParser.Identifier, 0); } - public FunctionRefContext(ExpressionContext ctx) { copyFrom(ctx); } - @Override - public void enterRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterFunctionRef(this); - } - @Override - public void exitRule(ParseTreeListener listener) { - if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitFunctionRef(this); - } - @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitFunctionRef(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitInstanceOfOp(this); else return visitor.visitChildren(this); } } @@ -936,7 +907,7 @@ public class BindingExpressionParser extends Parser { public ExpressionContext left; public Token op; public ExpressionContext right; - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -952,13 +923,32 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitBinaryOp(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitBinaryOp(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitBinaryOp(this); + else return visitor.visitChildren(this); + } + } + public static class FunctionRefContext extends ExpressionContext { + public ExpressionContext expression() { + return getRuleContext(ExpressionContext.class,0); + } + public TerminalNode Identifier() { return getToken(BindingExpressionParser.Identifier, 0); } + public FunctionRefContext(ExpressionContext ctx) { copyFrom(ctx); } + @Override + public void enterRule(ParseTreeListener listener) { + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).enterFunctionRef(this); + } + @Override + public void exitRule(ParseTreeListener listener) { + if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitFunctionRef(this); + } + @Override + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitFunctionRef(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ExpressionContext expression() throws RecognitionException { return expression(0); } @@ -976,121 +966,114 @@ public class BindingExpressionParser extends Parser { enterOuterAlt(_localctx, 1); { setState(100); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,6,_ctx) ) { case 1: { - _localctx = new CastOpContext(_localctx); + _localctx = new GroupingContext(_localctx); _ctx = _localctx; _prevctx = _localctx; setState(82); match(T__4); setState(83); - type(); + expression(0); setState(84); match(T__5); - setState(85); - expression(16); } break; - case 2: { - _localctx = new UnaryOpContext(_localctx); + _localctx = new PrimaryContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(87); - ((UnaryOpContext)_localctx).op = _input.LT(1); - _la = _input.LA(1); - if ( !(_la==T__10 || _la==T__11) ) { - ((UnaryOpContext)_localctx).op = _errHandler.recoverInline(this); - } else { - consume(); - } - setState(88); - expression(15); + setState(86); + literal(); } break; - case 3: { - _localctx = new UnaryOpContext(_localctx); + _localctx = new PrimaryContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(89); - ((UnaryOpContext)_localctx).op = _input.LT(1); - _la = _input.LA(1); - if ( !(_la==T__12 || _la==T__13) ) { - ((UnaryOpContext)_localctx).op = _errHandler.recoverInline(this); - } else { - consume(); - } - setState(90); - expression(14); + setState(87); + match(VoidLiteral); } break; - case 4: { - _localctx = new GroupingContext(_localctx); + _localctx = new PrimaryContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(91); - match(T__4); - setState(92); - expression(0); - setState(93); - match(T__5); + setState(88); + identifier(); } break; - case 5: { _localctx = new PrimaryContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(95); - literal(); + setState(89); + classExtraction(); } break; - case 6: { - _localctx = new PrimaryContext(_localctx); + _localctx = new ResourceContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(96); - match(VoidLiteral); + setState(90); + resources(); } break; - case 7: { - _localctx = new PrimaryContext(_localctx); + _localctx = new CastOpContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(97); - identifier(); + setState(91); + match(T__4); + setState(92); + type(); + setState(93); + match(T__5); + setState(94); + expression(16); } break; - case 8: { - _localctx = new PrimaryContext(_localctx); + _localctx = new UnaryOpContext(_localctx); _ctx = _localctx; _prevctx = _localctx; - setState(98); - classExtraction(); + setState(96); + ((UnaryOpContext)_localctx).op = _input.LT(1); + _la = _input.LA(1); + if ( !(_la==T__10 || _la==T__11) ) { + ((UnaryOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); + } else { + consume(); + } + setState(97); + expression(15); } break; - case 9: { - _localctx = new ResourceContext(_localctx); + _localctx = new UnaryOpContext(_localctx); _ctx = _localctx; _prevctx = _localctx; + setState(98); + ((UnaryOpContext)_localctx).op = _input.LT(1); + _la = _input.LA(1); + if ( !(_la==T__12 || _la==T__13) ) { + ((UnaryOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); + } else { + consume(); + } setState(99); - resources(); + expression(14); } break; } @@ -1104,6 +1087,7 @@ public class BindingExpressionParser extends Parser { _prevctx = _localctx; { setState(163); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,8,_ctx) ) { case 1: { @@ -1116,7 +1100,7 @@ public class BindingExpressionParser extends Parser { ((MathOpContext)_localctx).op = _input.LT(1); _la = _input.LA(1); if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__14) | (1L << T__15) | (1L << T__16))) != 0)) ) { - ((MathOpContext)_localctx).op = _errHandler.recoverInline(this); + ((MathOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); } else { consume(); } @@ -1124,7 +1108,6 @@ public class BindingExpressionParser extends Parser { ((MathOpContext)_localctx).right = expression(14); } break; - case 2: { _localctx = new MathOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1136,7 +1119,7 @@ public class BindingExpressionParser extends Parser { ((MathOpContext)_localctx).op = _input.LT(1); _la = _input.LA(1); if ( !(_la==T__10 || _la==T__11) ) { - ((MathOpContext)_localctx).op = _errHandler.recoverInline(this); + ((MathOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); } else { consume(); } @@ -1144,7 +1127,6 @@ public class BindingExpressionParser extends Parser { ((MathOpContext)_localctx).right = expression(13); } break; - case 3: { _localctx = new BitShiftOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1156,7 +1138,7 @@ public class BindingExpressionParser extends Parser { ((BitShiftOpContext)_localctx).op = _input.LT(1); _la = _input.LA(1); if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__17) | (1L << T__18) | (1L << T__19))) != 0)) ) { - ((BitShiftOpContext)_localctx).op = _errHandler.recoverInline(this); + ((BitShiftOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); } else { consume(); } @@ -1164,7 +1146,6 @@ public class BindingExpressionParser extends Parser { ((BitShiftOpContext)_localctx).right = expression(12); } break; - case 4: { _localctx = new ComparisonOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1176,7 +1157,7 @@ public class BindingExpressionParser extends Parser { ((ComparisonOpContext)_localctx).op = _input.LT(1); _la = _input.LA(1); if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23))) != 0)) ) { - ((ComparisonOpContext)_localctx).op = _errHandler.recoverInline(this); + ((ComparisonOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); } else { consume(); } @@ -1184,7 +1165,6 @@ public class BindingExpressionParser extends Parser { ((ComparisonOpContext)_localctx).right = expression(11); } break; - case 5: { _localctx = new ComparisonOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1196,7 +1176,7 @@ public class BindingExpressionParser extends Parser { ((ComparisonOpContext)_localctx).op = _input.LT(1); _la = _input.LA(1); if ( !(_la==T__25 || _la==T__26) ) { - ((ComparisonOpContext)_localctx).op = _errHandler.recoverInline(this); + ((ComparisonOpContext)_localctx).op = (Token)_errHandler.recoverInline(this); } else { consume(); } @@ -1204,7 +1184,6 @@ public class BindingExpressionParser extends Parser { ((ComparisonOpContext)_localctx).right = expression(9); } break; - case 6: { _localctx = new BinaryOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1218,7 +1197,6 @@ public class BindingExpressionParser extends Parser { ((BinaryOpContext)_localctx).right = expression(8); } break; - case 7: { _localctx = new BinaryOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1232,7 +1210,6 @@ public class BindingExpressionParser extends Parser { ((BinaryOpContext)_localctx).right = expression(7); } break; - case 8: { _localctx = new BinaryOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1246,7 +1223,6 @@ public class BindingExpressionParser extends Parser { ((BinaryOpContext)_localctx).right = expression(6); } break; - case 9: { _localctx = new AndOrOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1260,7 +1236,6 @@ public class BindingExpressionParser extends Parser { ((AndOrOpContext)_localctx).right = expression(5); } break; - case 10: { _localctx = new AndOrOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1274,7 +1249,6 @@ public class BindingExpressionParser extends Parser { ((AndOrOpContext)_localctx).right = expression(4); } break; - case 11: { _localctx = new TernaryOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1292,7 +1266,6 @@ public class BindingExpressionParser extends Parser { ((TernaryOpContext)_localctx).iffalse = expression(2); } break; - case 12: { _localctx = new QuestionQuestionOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1306,7 +1279,6 @@ public class BindingExpressionParser extends Parser { ((QuestionQuestionOpContext)_localctx).right = expression(2); } break; - case 13: { _localctx = new DotOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1319,7 +1291,6 @@ public class BindingExpressionParser extends Parser { match(Identifier); } break; - case 14: { _localctx = new FunctionRefContext(new ExpressionContext(_parentctx, _parentState)); @@ -1332,7 +1303,6 @@ public class BindingExpressionParser extends Parser { match(Identifier); } break; - case 15: { _localctx = new BracketOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1347,7 +1317,6 @@ public class BindingExpressionParser extends Parser { match(T__9); } break; - case 16: { _localctx = new MethodInvocationContext(new ExpressionContext(_parentctx, _parentState)); @@ -1374,7 +1343,6 @@ public class BindingExpressionParser extends Parser { match(T__5); } break; - case 17: { _localctx = new InstanceOfOpContext(new ExpressionContext(_parentctx, _parentState)); @@ -1424,13 +1392,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitClassExtraction(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitClassExtraction(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitClassExtraction(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ClassExtractionContext classExtraction() throws RecognitionException { ClassExtractionContext _localctx = new ClassExtractionContext(_ctx, getState()); enterRule(_localctx, 14, RULE_classExtraction); @@ -1457,7 +1424,7 @@ public class BindingExpressionParser extends Parser { } public static class ExpressionListContext extends ParserRuleContext { - public List<? extends ExpressionContext> expression() { + public List<ExpressionContext> expression() { return getRuleContexts(ExpressionContext.class); } public ExpressionContext expression(int i) { @@ -1476,13 +1443,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitExpressionList(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitExpressionList(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitExpressionList(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ExpressionListContext expressionList() throws RecognitionException { ExpressionListContext _localctx = new ExpressionListContext(_ctx, getState()); enterRule(_localctx, 16, RULE_expressionList); @@ -1541,13 +1507,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitLiteral(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitLiteral(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitLiteral(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final LiteralContext literal() throws RecognitionException { LiteralContext _localctx = new LiteralContext(_ctx, getState()); enterRule(_localctx, 18, RULE_literal); @@ -1603,13 +1568,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitIdentifier(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitIdentifier(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitIdentifier(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final IdentifierContext identifier() throws RecognitionException { IdentifierContext _localctx = new IdentifierContext(_ctx, getState()); enterRule(_localctx, 20, RULE_identifier); @@ -1650,13 +1614,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitJavaLiteral(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitJavaLiteral(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitJavaLiteral(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final JavaLiteralContext javaLiteral() throws RecognitionException { JavaLiteralContext _localctx = new JavaLiteralContext(_ctx, getState()); enterRule(_localctx, 22, RULE_javaLiteral); @@ -1700,13 +1663,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitStringLiteral(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitStringLiteral(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitStringLiteral(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final StringLiteralContext stringLiteral() throws RecognitionException { StringLiteralContext _localctx = new StringLiteralContext(_ctx, getState()); enterRule(_localctx, 24, RULE_stringLiteral); @@ -1754,13 +1716,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitExplicitGenericInvocation(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitExplicitGenericInvocation(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitExplicitGenericInvocation(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ExplicitGenericInvocationContext explicitGenericInvocation() throws RecognitionException { ExplicitGenericInvocationContext _localctx = new ExplicitGenericInvocationContext(_ctx, getState()); enterRule(_localctx, 26, RULE_explicitGenericInvocation); @@ -1785,7 +1746,7 @@ public class BindingExpressionParser extends Parser { } public static class TypeArgumentsContext extends ParserRuleContext { - public List<? extends TypeContext> type() { + public List<TypeContext> type() { return getRuleContexts(TypeContext.class); } public TypeContext type(int i) { @@ -1804,13 +1765,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitTypeArguments(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitTypeArguments(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitTypeArguments(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final TypeArgumentsContext typeArguments() throws RecognitionException { TypeArgumentsContext _localctx = new TypeArgumentsContext(_ctx, getState()); enterRule(_localctx, 28, RULE_typeArguments); @@ -1873,13 +1833,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitType(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitType(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitType(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final TypeContext type() throws RecognitionException { TypeContext _localctx = new TypeContext(_ctx, getState()); enterRule(_localctx, 30, RULE_type); @@ -1977,13 +1936,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitExplicitGenericInvocationSuffix(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitExplicitGenericInvocationSuffix(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitExplicitGenericInvocationSuffix(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ExplicitGenericInvocationSuffixContext explicitGenericInvocationSuffix() throws RecognitionException { ExplicitGenericInvocationSuffixContext _localctx = new ExplicitGenericInvocationSuffixContext(_ctx, getState()); enterRule(_localctx, 32, RULE_explicitGenericInvocationSuffix); @@ -2024,13 +1982,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitArguments(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitArguments(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitArguments(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ArgumentsContext arguments() throws RecognitionException { ArgumentsContext _localctx = new ArgumentsContext(_ctx, getState()); enterRule(_localctx, 34, RULE_arguments); @@ -2068,13 +2025,13 @@ public class BindingExpressionParser extends Parser { public IdentifierContext identifier() { return getRuleContext(IdentifierContext.class,0); } - public List<? extends TypeArgumentsContext> typeArguments() { + public List<TypeArgumentsContext> typeArguments() { return getRuleContexts(TypeArgumentsContext.class); } public TypeArgumentsContext typeArguments(int i) { return getRuleContext(TypeArgumentsContext.class,i); } - public List<? extends TerminalNode> Identifier() { return getTokens(BindingExpressionParser.Identifier); } + public List<TerminalNode> Identifier() { return getTokens(BindingExpressionParser.Identifier); } public TerminalNode Identifier(int i) { return getToken(BindingExpressionParser.Identifier, i); } @@ -2091,13 +2048,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitClassOrInterfaceType(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitClassOrInterfaceType(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitClassOrInterfaceType(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ClassOrInterfaceTypeContext classOrInterfaceType() throws RecognitionException { ClassOrInterfaceTypeContext _localctx = new ClassOrInterfaceTypeContext(_ctx, getState()); enterRule(_localctx, 36, RULE_classOrInterfaceType); @@ -2108,6 +2064,7 @@ public class BindingExpressionParser extends Parser { setState(231); identifier(); setState(233); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,17,_ctx) ) { case 1: { @@ -2128,6 +2085,7 @@ public class BindingExpressionParser extends Parser { setState(236); match(Identifier); setState(238); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,18,_ctx) ) { case 1: { @@ -2170,13 +2128,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitPrimitiveType(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitPrimitiveType(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitPrimitiveType(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final PrimitiveTypeContext primitiveType() throws RecognitionException { PrimitiveTypeContext _localctx = new PrimitiveTypeContext(_ctx, getState()); enterRule(_localctx, 38, RULE_primitiveType); @@ -2222,13 +2179,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitResources(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitResources(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitResources(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ResourcesContext resources() throws RecognitionException { ResourcesContext _localctx = new ResourcesContext(_ctx, getState()); enterRule(_localctx, 40, RULE_resources); @@ -2238,6 +2194,7 @@ public class BindingExpressionParser extends Parser { setState(247); match(ResourceReference); setState(249); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,20,_ctx) ) { case 1: { @@ -2276,13 +2233,12 @@ public class BindingExpressionParser extends Parser { if ( listener instanceof BindingExpressionListener ) ((BindingExpressionListener)listener).exitResourceParameters(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof BindingExpressionVisitor<?> ) return ((BindingExpressionVisitor<? extends Result>)visitor).visitResourceParameters(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof BindingExpressionVisitor ) return ((BindingExpressionVisitor<? extends T>)visitor).visitResourceParameters(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ResourceParametersContext resourceParameters() throws RecognitionException { ResourceParametersContext _localctx = new ResourceParametersContext(_ctx, getState()); enterRule(_localctx, 42, RULE_resourceParameters); @@ -2319,52 +2275,36 @@ public class BindingExpressionParser extends Parser { switch (predIndex) { case 0: return precpred(_ctx, 13); - case 1: return precpred(_ctx, 12); - case 2: return precpred(_ctx, 11); - case 3: return precpred(_ctx, 10); - case 4: return precpred(_ctx, 8); - case 5: return precpred(_ctx, 7); - case 6: return precpred(_ctx, 6); - case 7: return precpred(_ctx, 5); - case 8: return precpred(_ctx, 4); - case 9: return precpred(_ctx, 3); - case 10: return precpred(_ctx, 2); - case 11: return precpred(_ctx, 1); - case 12: return precpred(_ctx, 20); - case 13: return precpred(_ctx, 19); - case 14: return precpred(_ctx, 18); - case 15: return precpred(_ctx, 17); - case 16: return precpred(_ctx, 9); } @@ -2372,7 +2312,7 @@ public class BindingExpressionParser extends Parser { } public static final String _serializedATN = - "\3\uaf6f\u8320\u479d\ub75c\u4880\u1605\u191c\uab37\3<\u0102\4\2\t\2\4"+ + "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\3<\u0102\4\2\t\2\4"+ "\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t"+ "\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+ "\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\3\2\3\2\5\2\61\n\2"+ @@ -2390,29 +2330,28 @@ public class BindingExpressionParser extends Parser { "\3\21\3\21\7\21\u00da\n\21\f\21\16\21\u00dd\13\21\5\21\u00df\n\21\3\22"+ "\3\22\3\22\3\23\3\23\5\23\u00e6\n\23\3\23\3\23\3\24\3\24\5\24\u00ec\n"+ "\24\3\24\3\24\3\24\5\24\u00f1\n\24\7\24\u00f3\n\24\f\24\16\24\u00f6\13"+ - "\24\3\25\3\25\3\26\3\26\5\26\u00fc\n\26\3\27\3\27\3\27\3\27\3\27\2\2\3"+ - "\16\30\2\2\4\2\6\2\b\2\n\2\f\2\16\2\20\2\22\2\24\2\26\2\30\2\32\2\34\2"+ - "\36\2 \2\"\2$\2&\2(\2*\2,\2\2\13\3\2\r\16\3\2\17\20\3\2\21\23\3\2\24\26"+ - "\3\2\27\32\3\2\34\35\4\2\61\64\67\67\3\2\65\66\3\2\'.\u0117\2\63\3\2\2"+ - "\2\4\65\3\2\2\2\6=\3\2\2\2\b?\3\2\2\2\nI\3\2\2\2\fK\3\2\2\2\16f\3\2\2"+ - "\2\20\u00aa\3\2\2\2\22\u00ae\3\2\2\2\24\u00b8\3\2\2\2\26\u00ba\3\2\2\2"+ - "\30\u00bc\3\2\2\2\32\u00be\3\2\2\2\34\u00c0\3\2\2\2\36\u00c3\3\2\2\2 "+ - "\u00de\3\2\2\2\"\u00e0\3\2\2\2$\u00e3\3\2\2\2&\u00e9\3\2\2\2(\u00f7\3"+ - "\2\2\2*\u00f9\3\2\2\2,\u00fd\3\2\2\2.\60\5\16\b\2/\61\5\4\3\2\60/\3\2"+ - "\2\2\60\61\3\2\2\2\61\64\3\2\2\2\62\64\5\b\5\2\63.\3\2\2\2\63\62\3\2\2"+ - "\2\64\3\3\2\2\2\65\66\7\3\2\2\66\67\7\4\2\2\678\7\5\2\289\5\6\4\29\5\3"+ - "\2\2\2:>\5\24\13\2;>\7:\2\2<>\5\26\f\2=:\3\2\2\2=;\3\2\2\2=<\3\2\2\2>"+ - "\7\3\2\2\2?@\5\n\6\2@A\7\6\2\2AB\5\16\b\2B\t\3\2\2\2CJ\78\2\2DF\7\7\2"+ - "\2EG\5\f\7\2FE\3\2\2\2FG\3\2\2\2GH\3\2\2\2HJ\7\b\2\2IC\3\2\2\2ID\3\2\2"+ - "\2J\13\3\2\2\2KP\78\2\2LM\7\3\2\2MO\78\2\2NL\3\2\2\2OR\3\2\2\2PN\3\2\2"+ - "\2PQ\3\2\2\2Q\r\3\2\2\2RP\3\2\2\2ST\b\b\1\2TU\7\7\2\2UV\5 \21\2VW\7\b"+ - "\2\2WX\5\16\b\22Xg\3\2\2\2YZ\t\2\2\2Zg\5\16\b\21[\\\t\3\2\2\\g\5\16\b"+ - "\20]^\7\7\2\2^_\5\16\b\2_`\7\b\2\2`g\3\2\2\2ag\5\24\13\2bg\7\60\2\2cg"+ - "\5\26\f\2dg\5\20\t\2eg\5*\26\2fS\3\2\2\2fY\3\2\2\2f[\3\2\2\2f]\3\2\2\2"+ - "fa\3\2\2\2fb\3\2\2\2fc\3\2\2\2fd\3\2\2\2fe\3\2\2\2g\u00a7\3\2\2\2hi\f"+ - "\17\2\2ij\t\4\2\2j\u00a6\5\16\b\20kl\f\16\2\2lm\t\2\2\2m\u00a6\5\16\b"+ - "\17no\f\r\2\2op\t\5\2\2p\u00a6\5\16\b\16qr\f\f\2\2rs\t\6\2\2s\u00a6\5"+ - "\16\b\rtu\f\n\2\2uv\t\7\2\2v\u00a6\5\16\b\13wx\f\t\2\2xy\7\36\2\2y\u00a6"+ + "\24\3\25\3\25\3\26\3\26\5\26\u00fc\n\26\3\27\3\27\3\27\3\27\3\27\2\3\16"+ + "\30\2\4\6\b\n\f\16\20\22\24\26\30\32\34\36 \"$&(*,\2\13\3\2\r\16\3\2\17"+ + "\20\3\2\21\23\3\2\24\26\3\2\27\32\3\2\34\35\4\2\61\64\67\67\3\2\65\66"+ + "\3\2\'.\u0117\2\63\3\2\2\2\4\65\3\2\2\2\6=\3\2\2\2\b?\3\2\2\2\nI\3\2\2"+ + "\2\fK\3\2\2\2\16f\3\2\2\2\20\u00aa\3\2\2\2\22\u00ae\3\2\2\2\24\u00b8\3"+ + "\2\2\2\26\u00ba\3\2\2\2\30\u00bc\3\2\2\2\32\u00be\3\2\2\2\34\u00c0\3\2"+ + "\2\2\36\u00c3\3\2\2\2 \u00de\3\2\2\2\"\u00e0\3\2\2\2$\u00e3\3\2\2\2&\u00e9"+ + "\3\2\2\2(\u00f7\3\2\2\2*\u00f9\3\2\2\2,\u00fd\3\2\2\2.\60\5\16\b\2/\61"+ + "\5\4\3\2\60/\3\2\2\2\60\61\3\2\2\2\61\64\3\2\2\2\62\64\5\b\5\2\63.\3\2"+ + "\2\2\63\62\3\2\2\2\64\3\3\2\2\2\65\66\7\3\2\2\66\67\7\4\2\2\678\7\5\2"+ + "\289\5\6\4\29\5\3\2\2\2:>\5\24\13\2;>\7:\2\2<>\5\26\f\2=:\3\2\2\2=;\3"+ + "\2\2\2=<\3\2\2\2>\7\3\2\2\2?@\5\n\6\2@A\7\6\2\2AB\5\16\b\2B\t\3\2\2\2"+ + "CJ\78\2\2DF\7\7\2\2EG\5\f\7\2FE\3\2\2\2FG\3\2\2\2GH\3\2\2\2HJ\7\b\2\2"+ + "IC\3\2\2\2ID\3\2\2\2J\13\3\2\2\2KP\78\2\2LM\7\3\2\2MO\78\2\2NL\3\2\2\2"+ + "OR\3\2\2\2PN\3\2\2\2PQ\3\2\2\2Q\r\3\2\2\2RP\3\2\2\2ST\b\b\1\2TU\7\7\2"+ + "\2UV\5\16\b\2VW\7\b\2\2Wg\3\2\2\2Xg\5\24\13\2Yg\7\60\2\2Zg\5\26\f\2[g"+ + "\5\20\t\2\\g\5*\26\2]^\7\7\2\2^_\5 \21\2_`\7\b\2\2`a\5\16\b\22ag\3\2\2"+ + "\2bc\t\2\2\2cg\5\16\b\21de\t\3\2\2eg\5\16\b\20fS\3\2\2\2fX\3\2\2\2fY\3"+ + "\2\2\2fZ\3\2\2\2f[\3\2\2\2f\\\3\2\2\2f]\3\2\2\2fb\3\2\2\2fd\3\2\2\2g\u00a7"+ + "\3\2\2\2hi\f\17\2\2ij\t\4\2\2j\u00a6\5\16\b\20kl\f\16\2\2lm\t\2\2\2m\u00a6"+ + "\5\16\b\17no\f\r\2\2op\t\5\2\2p\u00a6\5\16\b\16qr\f\f\2\2rs\t\6\2\2s\u00a6"+ + "\5\16\b\rtu\f\n\2\2uv\t\7\2\2v\u00a6\5\16\b\13wx\f\t\2\2xy\7\36\2\2y\u00a6"+ "\5\16\b\nz{\f\b\2\2{|\7\37\2\2|\u00a6\5\16\b\t}~\f\7\2\2~\177\7 \2\2\177"+ "\u00a6\5\16\b\b\u0080\u0081\f\6\2\2\u0081\u0082\7!\2\2\u0082\u00a6\5\16"+ "\b\7\u0083\u0084\f\5\2\2\u0084\u0085\7\"\2\2\u0085\u00a6\5\16\b\6\u0086"+ @@ -2463,5 +2402,9 @@ public class BindingExpressionParser extends Parser { public static final ATN _ATN = new ATNDeserializer().deserialize(_serializedATN.toCharArray()); static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } }
\ No newline at end of file diff --git a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionVisitor.java b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionVisitor.java index 871a64b6..c7443648 100644 --- a/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionVisitor.java +++ b/compilerCommon/src/main/grammar-gen/android/databinding/parser/BindingExpressionVisitor.java @@ -1,336 +1,274 @@ -// Generated from BindingExpression.g4 by ANTLR 4.5 +// Generated from BindingExpression.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ParseTreeVisitor; /** * This interface defines a complete generic visitor for a parse tree produced * by {@link BindingExpressionParser}. * - * @param <Result> The return type of the visit operation. Use {@link Void} for + * @param <T> The return type of the visit operation. Use {@link Void} for * operations with no return type. */ -public interface BindingExpressionVisitor<Result> extends ParseTreeVisitor<Result> { +public interface BindingExpressionVisitor<T> extends ParseTreeVisitor<T> { /** - * Visit a parse tree produced by the {@code CastOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by the {@code RootExpr} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree * @return the visitor result */ - Result visitCastOp(@NotNull BindingExpressionParser.CastOpContext ctx); - + T visitRootExpr(BindingExpressionParser.RootExprContext ctx); /** - * Visit a parse tree produced by the {@code ComparisonOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by the {@code RootLambda} + * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. * @param ctx the parse tree * @return the visitor result */ - Result visitComparisonOp(@NotNull BindingExpressionParser.ComparisonOpContext ctx); - + T visitRootLambda(BindingExpressionParser.RootLambdaContext ctx); /** - * Visit a parse tree produced by the {@code BracketOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by {@link BindingExpressionParser#defaults}. * @param ctx the parse tree * @return the visitor result */ - Result visitBracketOp(@NotNull BindingExpressionParser.BracketOpContext ctx); - + T visitDefaults(BindingExpressionParser.DefaultsContext ctx); /** - * Visit a parse tree produced by the {@code UnaryOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by {@link BindingExpressionParser#constantValue}. * @param ctx the parse tree * @return the visitor result */ - Result visitUnaryOp(@NotNull BindingExpressionParser.UnaryOpContext ctx); - + T visitConstantValue(BindingExpressionParser.ConstantValueContext ctx); /** - * Visit a parse tree produced by the {@code Resource} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. * @param ctx the parse tree * @return the visitor result */ - Result visitResource(@NotNull BindingExpressionParser.ResourceContext ctx); - + T visitLambdaExpression(BindingExpressionParser.LambdaExpressionContext ctx); /** - * Visit a parse tree produced by the {@code QuestionQuestionOp} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by the {@code SingleLambdaParameter} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree * @return the visitor result */ - Result visitQuestionQuestionOp(@NotNull BindingExpressionParser.QuestionQuestionOpContext ctx); - + T visitSingleLambdaParameter(BindingExpressionParser.SingleLambdaParameterContext ctx); /** - * Visit a parse tree produced by the {@code Grouping} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by the {@code LambdaParameterList} + * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. * @param ctx the parse tree * @return the visitor result */ - Result visitGrouping(@NotNull BindingExpressionParser.GroupingContext ctx); - + T visitLambdaParameterList(BindingExpressionParser.LambdaParameterListContext ctx); /** - * Visit a parse tree produced by the {@code MethodInvocation} - * labeled alternative in {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. * @param ctx the parse tree * @return the visitor result */ - Result visitMethodInvocation(@NotNull BindingExpressionParser.MethodInvocationContext ctx); - + T visitInferredFormalParameterList(BindingExpressionParser.InferredFormalParameterListContext ctx); /** - * Visit a parse tree produced by the {@code BitShiftOp} + * Visit a parse tree produced by the {@code CastOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitBitShiftOp(@NotNull BindingExpressionParser.BitShiftOpContext ctx); - + T visitCastOp(BindingExpressionParser.CastOpContext ctx); /** - * Visit a parse tree produced by the {@code AndOrOp} + * Visit a parse tree produced by the {@code ComparisonOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitAndOrOp(@NotNull BindingExpressionParser.AndOrOpContext ctx); - + T visitComparisonOp(BindingExpressionParser.ComparisonOpContext ctx); /** - * Visit a parse tree produced by the {@code TernaryOp} + * Visit a parse tree produced by the {@code UnaryOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitTernaryOp(@NotNull BindingExpressionParser.TernaryOpContext ctx); - + T visitUnaryOp(BindingExpressionParser.UnaryOpContext ctx); /** - * Visit a parse tree produced by the {@code Primary} + * Visit a parse tree produced by the {@code BracketOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitPrimary(@NotNull BindingExpressionParser.PrimaryContext ctx); - + T visitBracketOp(BindingExpressionParser.BracketOpContext ctx); /** - * Visit a parse tree produced by the {@code DotOp} + * Visit a parse tree produced by the {@code Resource} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitDotOp(@NotNull BindingExpressionParser.DotOpContext ctx); - + T visitResource(BindingExpressionParser.ResourceContext ctx); /** - * Visit a parse tree produced by the {@code MathOp} + * Visit a parse tree produced by the {@code QuestionQuestionOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitMathOp(@NotNull BindingExpressionParser.MathOpContext ctx); - + T visitQuestionQuestionOp(BindingExpressionParser.QuestionQuestionOpContext ctx); /** - * Visit a parse tree produced by the {@code InstanceOfOp} + * Visit a parse tree produced by the {@code Grouping} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitInstanceOfOp(@NotNull BindingExpressionParser.InstanceOfOpContext ctx); - + T visitGrouping(BindingExpressionParser.GroupingContext ctx); /** - * Visit a parse tree produced by the {@code FunctionRef} + * Visit a parse tree produced by the {@code MethodInvocation} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitFunctionRef(@NotNull BindingExpressionParser.FunctionRefContext ctx); - + T visitMethodInvocation(BindingExpressionParser.MethodInvocationContext ctx); /** - * Visit a parse tree produced by the {@code BinaryOp} + * Visit a parse tree produced by the {@code BitShiftOp} * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitBinaryOp(@NotNull BindingExpressionParser.BinaryOpContext ctx); - - /** - * Visit a parse tree produced by the {@code RootExpr} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - * @return the visitor result - */ - Result visitRootExpr(@NotNull BindingExpressionParser.RootExprContext ctx); - - /** - * Visit a parse tree produced by the {@code RootLambda} - * labeled alternative in {@link BindingExpressionParser#bindingSyntax}. - * @param ctx the parse tree - * @return the visitor result - */ - Result visitRootLambda(@NotNull BindingExpressionParser.RootLambdaContext ctx); - - /** - * Visit a parse tree produced by the {@code SingleLambdaParameter} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. - * @param ctx the parse tree - * @return the visitor result - */ - Result visitSingleLambdaParameter(@NotNull BindingExpressionParser.SingleLambdaParameterContext ctx); - + T visitBitShiftOp(BindingExpressionParser.BitShiftOpContext ctx); /** - * Visit a parse tree produced by the {@code LambdaParameterList} - * labeled alternative in {@link BindingExpressionParser#lambdaParameters}. + * Visit a parse tree produced by the {@code AndOrOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitLambdaParameterList(@NotNull BindingExpressionParser.LambdaParameterListContext ctx); - + T visitAndOrOp(BindingExpressionParser.AndOrOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#bindingSyntax}. + * Visit a parse tree produced by the {@code TernaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitBindingSyntax(@NotNull BindingExpressionParser.BindingSyntaxContext ctx); - + T visitTernaryOp(BindingExpressionParser.TernaryOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#defaults}. + * Visit a parse tree produced by the {@code Primary} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitDefaults(@NotNull BindingExpressionParser.DefaultsContext ctx); - + T visitPrimary(BindingExpressionParser.PrimaryContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#constantValue}. + * Visit a parse tree produced by the {@code DotOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitConstantValue(@NotNull BindingExpressionParser.ConstantValueContext ctx); - + T visitDotOp(BindingExpressionParser.DotOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#lambdaExpression}. + * Visit a parse tree produced by the {@code MathOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitLambdaExpression(@NotNull BindingExpressionParser.LambdaExpressionContext ctx); - + T visitMathOp(BindingExpressionParser.MathOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#lambdaParameters}. + * Visit a parse tree produced by the {@code InstanceOfOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitLambdaParameters(@NotNull BindingExpressionParser.LambdaParametersContext ctx); - + T visitInstanceOfOp(BindingExpressionParser.InstanceOfOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#inferredFormalParameterList}. + * Visit a parse tree produced by the {@code BinaryOp} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitInferredFormalParameterList(@NotNull BindingExpressionParser.InferredFormalParameterListContext ctx); - + T visitBinaryOp(BindingExpressionParser.BinaryOpContext ctx); /** - * Visit a parse tree produced by {@link BindingExpressionParser#expression}. + * Visit a parse tree produced by the {@code FunctionRef} + * labeled alternative in {@link BindingExpressionParser#expression}. * @param ctx the parse tree * @return the visitor result */ - Result visitExpression(@NotNull BindingExpressionParser.ExpressionContext ctx); - + T visitFunctionRef(BindingExpressionParser.FunctionRefContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#classExtraction}. * @param ctx the parse tree * @return the visitor result */ - Result visitClassExtraction(@NotNull BindingExpressionParser.ClassExtractionContext ctx); - + T visitClassExtraction(BindingExpressionParser.ClassExtractionContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#expressionList}. * @param ctx the parse tree * @return the visitor result */ - Result visitExpressionList(@NotNull BindingExpressionParser.ExpressionListContext ctx); - + T visitExpressionList(BindingExpressionParser.ExpressionListContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#literal}. * @param ctx the parse tree * @return the visitor result */ - Result visitLiteral(@NotNull BindingExpressionParser.LiteralContext ctx); - + T visitLiteral(BindingExpressionParser.LiteralContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#identifier}. * @param ctx the parse tree * @return the visitor result */ - Result visitIdentifier(@NotNull BindingExpressionParser.IdentifierContext ctx); - + T visitIdentifier(BindingExpressionParser.IdentifierContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#javaLiteral}. * @param ctx the parse tree * @return the visitor result */ - Result visitJavaLiteral(@NotNull BindingExpressionParser.JavaLiteralContext ctx); - + T visitJavaLiteral(BindingExpressionParser.JavaLiteralContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#stringLiteral}. * @param ctx the parse tree * @return the visitor result */ - Result visitStringLiteral(@NotNull BindingExpressionParser.StringLiteralContext ctx); - + T visitStringLiteral(BindingExpressionParser.StringLiteralContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocation}. * @param ctx the parse tree * @return the visitor result */ - Result visitExplicitGenericInvocation(@NotNull BindingExpressionParser.ExplicitGenericInvocationContext ctx); - + T visitExplicitGenericInvocation(BindingExpressionParser.ExplicitGenericInvocationContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#typeArguments}. * @param ctx the parse tree * @return the visitor result */ - Result visitTypeArguments(@NotNull BindingExpressionParser.TypeArgumentsContext ctx); - + T visitTypeArguments(BindingExpressionParser.TypeArgumentsContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#type}. * @param ctx the parse tree * @return the visitor result */ - Result visitType(@NotNull BindingExpressionParser.TypeContext ctx); - + T visitType(BindingExpressionParser.TypeContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#explicitGenericInvocationSuffix}. * @param ctx the parse tree * @return the visitor result */ - Result visitExplicitGenericInvocationSuffix(@NotNull BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); - + T visitExplicitGenericInvocationSuffix(BindingExpressionParser.ExplicitGenericInvocationSuffixContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#arguments}. * @param ctx the parse tree * @return the visitor result */ - Result visitArguments(@NotNull BindingExpressionParser.ArgumentsContext ctx); - + T visitArguments(BindingExpressionParser.ArgumentsContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#classOrInterfaceType}. * @param ctx the parse tree * @return the visitor result */ - Result visitClassOrInterfaceType(@NotNull BindingExpressionParser.ClassOrInterfaceTypeContext ctx); - + T visitClassOrInterfaceType(BindingExpressionParser.ClassOrInterfaceTypeContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#primitiveType}. * @param ctx the parse tree * @return the visitor result */ - Result visitPrimitiveType(@NotNull BindingExpressionParser.PrimitiveTypeContext ctx); - + T visitPrimitiveType(BindingExpressionParser.PrimitiveTypeContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#resources}. * @param ctx the parse tree * @return the visitor result */ - Result visitResources(@NotNull BindingExpressionParser.ResourcesContext ctx); - + T visitResources(BindingExpressionParser.ResourcesContext ctx); /** * Visit a parse tree produced by {@link BindingExpressionParser#resourceParameters}. * @param ctx the parse tree * @return the visitor result */ - Result visitResourceParameters(@NotNull BindingExpressionParser.ResourceParametersContext ctx); + T visitResourceParameters(BindingExpressionParser.ResourceParametersContext ctx); }
\ No newline at end of file diff --git a/compilerCommon/src/main/java/android/databinding/tool/util/StringUtils.java b/compilerCommon/src/main/java/android/databinding/tool/util/StringUtils.java index 5f535baf..5774183a 100644 --- a/compilerCommon/src/main/java/android/databinding/tool/util/StringUtils.java +++ b/compilerCommon/src/main/java/android/databinding/tool/util/StringUtils.java @@ -19,8 +19,6 @@ package android.databinding.tool.util; import com.google.common.base.StandardSystemProperty; import com.google.common.base.Strings; -import org.antlr.v4.runtime.misc.Nullable; - public class StringUtils { public static final String LINE_SEPARATOR = StandardSystemProperty.LINE_SEPARATOR.value(); @@ -41,7 +39,7 @@ public class StringUtils { /** The entity for the line feed character */ private static final String LFEED_ENTITY = "
"; - public static boolean isNotBlank(@Nullable CharSequence string) { + public static boolean isNotBlank(CharSequence string) { if (string == null) { return false; } @@ -53,7 +51,7 @@ public class StringUtils { return false; } - public static String capitalize(@Nullable String string) { + public static String capitalize(String string) { if (Strings.isNullOrEmpty(string)) { return string; } diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.java index b8c79bb7..352a2f10 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.java @@ -1,13 +1,21 @@ -// Generated from XMLLexer.g4 by ANTLR 4.4 +// Generated from XMLLexer.g4 by ANTLR 4.5.3 package android.databinding.parser; - -import org.antlr.v4.runtime.CharStream; import org.antlr.v4.runtime.Lexer; -import org.antlr.v4.runtime.atn.ATN; -import org.antlr.v4.runtime.atn.ATNDeserializer; -import org.antlr.v4.runtime.atn.LexerATNSimulator; +import org.antlr.v4.runtime.CharStream; +import org.antlr.v4.runtime.Token; +import org.antlr.v4.runtime.TokenStream; +import org.antlr.v4.runtime.*; +import org.antlr.v4.runtime.atn.*; +import org.antlr.v4.runtime.dfa.DFA; +import org.antlr.v4.runtime.misc.*; +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) public class XMLLexer extends Lexer { + static { RuntimeMetaData.checkVersion("4.5.3", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int COMMENT=1, CDATA=2, DTD=3, EntityRef=4, CharRef=5, SEA_WS=6, OPEN=7, XMLDeclOpen=8, TEXT=9, CLOSE=10, SPECIAL_CLOSE=11, SLASH_CLOSE=12, SLASH=13, EQUALS=14, @@ -18,11 +26,6 @@ public class XMLLexer extends Lexer { "DEFAULT_MODE", "INSIDE", "PROC_INSTR" }; - public static final String[] tokenNames = { - "'\\u0000'", "'\\u0001'", "'\\u0002'", "'\\u0003'", "'\\u0004'", "'\\u0005'", - "'\\u0006'", "'\\u0007'", "'\b'", "'\t'", "'\n'", "'\\u000B'", "'\f'", - "'\r'", "'\\u000E'", "'\\u000F'", "'\\u0010'", "'\\u0011'", "'\\u0012'" - }; public static final String[] ruleNames = { "COMMENT", "CDATA", "DTD", "EntityRef", "CharRef", "SEA_WS", "OPEN", "XMLDeclOpen", "SPECIAL_OPEN", "TEXT", "CLOSE", "SPECIAL_CLOSE", "SLASH_CLOSE", "SLASH", @@ -30,19 +33,58 @@ public class XMLLexer extends Lexer { "PI", "IGNORE" }; + private static final String[] _LITERAL_NAMES = { + null, null, null, null, null, null, null, "'<'", null, null, "'>'", null, + "'/>'", "'/'", "'='" + }; + private static final String[] _SYMBOLIC_NAMES = { + null, "COMMENT", "CDATA", "DTD", "EntityRef", "CharRef", "SEA_WS", "OPEN", + "XMLDeclOpen", "TEXT", "CLOSE", "SPECIAL_CLOSE", "SLASH_CLOSE", "SLASH", + "EQUALS", "STRING", "Name", "S", "PI" + }; + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + + /** + * @deprecated Use {@link #VOCABULARY} instead. + */ + @Deprecated + public static final String[] tokenNames; + static { + tokenNames = new String[_SYMBOLIC_NAMES.length]; + for (int i = 0; i < tokenNames.length; i++) { + tokenNames[i] = VOCABULARY.getLiteralName(i); + if (tokenNames[i] == null) { + tokenNames[i] = VOCABULARY.getSymbolicName(i); + } + + if (tokenNames[i] == null) { + tokenNames[i] = "<INVALID>"; + } + } + } + + @Override + @Deprecated + public String[] getTokenNames() { + return tokenNames; + } + + @Override + + public Vocabulary getVocabulary() { + return VOCABULARY; + } + public XMLLexer(CharStream input) { super(input); - _interp = new LexerATNSimulator(this,_ATN); + _interp = new LexerATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); } @Override public String getGrammarFileName() { return "XMLLexer.g4"; } @Override - public String[] getTokenNames() { return tokenNames; } - - @Override public String[] getRuleNames() { return ruleNames; } @Override @@ -51,8 +93,11 @@ public class XMLLexer extends Lexer { @Override public String[] getModeNames() { return modeNames; } + @Override + public ATN getATN() { return _ATN; } + public static final String _serializedATN = - "\3\uaf6f\u8320\u479d\ub75c\u4880\u1605\u191c\uab37\2\24\u00e9\b\1\b\1"+ + "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2\24\u00e9\b\1\b\1"+ "\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\4"+ "\n\t\n\4\13\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t"+ "\21\4\22\t\22\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t"+ @@ -69,68 +114,71 @@ public class XMLLexer extends Lexer { "\13\21\3\21\5\21\u00c7\n\21\3\22\3\22\7\22\u00cb\n\22\f\22\16\22\u00ce"+ "\13\22\3\23\3\23\3\23\3\23\3\24\3\24\3\25\3\25\3\26\3\26\3\26\3\26\5\26"+ "\u00dc\n\26\3\27\5\27\u00df\n\27\3\30\3\30\3\30\3\30\3\30\3\31\3\31\3"+ - "\31\3\31\5=Q^\2\2\32\5\2\3\7\2\4\t\2\5\13\2\6\r\2\7\17\2\b\21\2\t\23\2"+ - "\n\25\2\2\27\2\13\31\2\f\33\2\r\35\2\16\37\2\17!\2\20#\2\21%\2\22\'\2"+ - "\23)\2\2+\2\2-\2\2/\2\2\61\2\24\63\2\2\5\2\3\4\f\4\2\13\13\"\"\4\2((>"+ - ">\4\2$$>>\4\2))>>\5\2\13\f\17\17\"\"\5\2\62;CHch\3\2\62;\4\2/\60aa\5\2"+ - "\u00b9\u00b9\u0302\u0371\u2041\u2042\n\2<<C\\c|\u2072\u2191\u2c02\u2ff1"+ - "\u3003\ud801\uf902\ufdd1\ufdf2\uffff\u00f3\2\5\3\2\2\2\2\7\3\2\2\2\2\t"+ - "\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2\2"+ - "\2\2\25\3\2\2\2\2\27\3\2\2\2\3\31\3\2\2\2\3\33\3\2\2\2\3\35\3\2\2\2\3"+ - "\37\3\2\2\2\3!\3\2\2\2\3#\3\2\2\2\3%\3\2\2\2\3\'\3\2\2\2\4\61\3\2\2\2"+ - "\4\63\3\2\2\2\5\65\3\2\2\2\7D\3\2\2\2\tX\3\2\2\2\13e\3\2\2\2\r~\3\2\2"+ - "\2\17\u0085\3\2\2\2\21\u0089\3\2\2\2\23\u008d\3\2\2\2\25\u0097\3\2\2\2"+ - "\27\u00a0\3\2\2\2\31\u00a4\3\2\2\2\33\u00a8\3\2\2\2\35\u00ad\3\2\2\2\37"+ - "\u00b2\3\2\2\2!\u00b4\3\2\2\2#\u00c6\3\2\2\2%\u00c8\3\2\2\2\'\u00cf\3"+ - "\2\2\2)\u00d3\3\2\2\2+\u00d5\3\2\2\2-\u00db\3\2\2\2/\u00de\3\2\2\2\61"+ - "\u00e0\3\2\2\2\63\u00e5\3\2\2\2\65\66\7>\2\2\66\67\7#\2\2\678\7/\2\28"+ - "9\7/\2\29=\3\2\2\2:<\13\2\2\2;:\3\2\2\2<?\3\2\2\2=>\3\2\2\2=;\3\2\2\2"+ - ">@\3\2\2\2?=\3\2\2\2@A\7/\2\2AB\7/\2\2BC\7@\2\2C\6\3\2\2\2DE\7>\2\2EF"+ - "\7#\2\2FG\7]\2\2GH\7E\2\2HI\7F\2\2IJ\7C\2\2JK\7V\2\2KL\7C\2\2LM\7]\2\2"+ - "MQ\3\2\2\2NP\13\2\2\2ON\3\2\2\2PS\3\2\2\2QR\3\2\2\2QO\3\2\2\2RT\3\2\2"+ - "\2SQ\3\2\2\2TU\7_\2\2UV\7_\2\2VW\7@\2\2W\b\3\2\2\2XY\7>\2\2YZ\7#\2\2Z"+ - "^\3\2\2\2[]\13\2\2\2\\[\3\2\2\2]`\3\2\2\2^_\3\2\2\2^\\\3\2\2\2_a\3\2\2"+ - "\2`^\3\2\2\2ab\7@\2\2bc\3\2\2\2cd\b\4\2\2d\n\3\2\2\2ef\7(\2\2fg\5%\22"+ - "\2gh\7=\2\2h\f\3\2\2\2ij\7(\2\2jk\7%\2\2km\3\2\2\2ln\5+\25\2ml\3\2\2\2"+ - "no\3\2\2\2om\3\2\2\2op\3\2\2\2pq\3\2\2\2qr\7=\2\2r\177\3\2\2\2st\7(\2"+ - "\2tu\7%\2\2uv\7z\2\2vx\3\2\2\2wy\5)\24\2xw\3\2\2\2yz\3\2\2\2zx\3\2\2\2"+ - "z{\3\2\2\2{|\3\2\2\2|}\7=\2\2}\177\3\2\2\2~i\3\2\2\2~s\3\2\2\2\177\16"+ - "\3\2\2\2\u0080\u0086\t\2\2\2\u0081\u0083\7\17\2\2\u0082\u0081\3\2\2\2"+ - "\u0082\u0083\3\2\2\2\u0083\u0084\3\2\2\2\u0084\u0086\7\f\2\2\u0085\u0080"+ - "\3\2\2\2\u0085\u0082\3\2\2\2\u0086\u0087\3\2\2\2\u0087\u0085\3\2\2\2\u0087"+ - "\u0088\3\2\2\2\u0088\20\3\2\2\2\u0089\u008a\7>\2\2\u008a\u008b\3\2\2\2"+ - "\u008b\u008c\b\b\3\2\u008c\22\3\2\2\2\u008d\u008e\7>\2\2\u008e\u008f\7"+ - "A\2\2\u008f\u0090\7z\2\2\u0090\u0091\7o\2\2\u0091\u0092\7n\2\2\u0092\u0093"+ - "\3\2\2\2\u0093\u0094\5\'\23\2\u0094\u0095\3\2\2\2\u0095\u0096\b\t\3\2"+ - "\u0096\24\3\2\2\2\u0097\u0098\7>\2\2\u0098\u0099\7A\2\2\u0099\u009a\3"+ - "\2\2\2\u009a\u009b\5%\22\2\u009b\u009c\3\2\2\2\u009c\u009d\b\n\4\2\u009d"+ - "\u009e\b\n\5\2\u009e\26\3\2\2\2\u009f\u00a1\n\3\2\2\u00a0\u009f\3\2\2"+ - "\2\u00a1\u00a2\3\2\2\2\u00a2\u00a0\3\2\2\2\u00a2\u00a3\3\2\2\2\u00a3\30"+ - "\3\2\2\2\u00a4\u00a5\7@\2\2\u00a5\u00a6\3\2\2\2\u00a6\u00a7\b\f\6\2\u00a7"+ - "\32\3\2\2\2\u00a8\u00a9\7A\2\2\u00a9\u00aa\7@\2\2\u00aa\u00ab\3\2\2\2"+ - "\u00ab\u00ac\b\r\6\2\u00ac\34\3\2\2\2\u00ad\u00ae\7\61\2\2\u00ae\u00af"+ - "\7@\2\2\u00af\u00b0\3\2\2\2\u00b0\u00b1\b\16\6\2\u00b1\36\3\2\2\2\u00b2"+ - "\u00b3\7\61\2\2\u00b3 \3\2\2\2\u00b4\u00b5\7?\2\2\u00b5\"\3\2\2\2\u00b6"+ - "\u00ba\7$\2\2\u00b7\u00b9\n\4\2\2\u00b8\u00b7\3\2\2\2\u00b9\u00bc\3\2"+ - "\2\2\u00ba\u00b8\3\2\2\2\u00ba\u00bb\3\2\2\2\u00bb\u00bd\3\2\2\2\u00bc"+ - "\u00ba\3\2\2\2\u00bd\u00c7\7$\2\2\u00be\u00c2\7)\2\2\u00bf\u00c1\n\5\2"+ - "\2\u00c0\u00bf\3\2\2\2\u00c1\u00c4\3\2\2\2\u00c2\u00c0\3\2\2\2\u00c2\u00c3"+ - "\3\2\2\2\u00c3\u00c5\3\2\2\2\u00c4\u00c2\3\2\2\2\u00c5\u00c7\7)\2\2\u00c6"+ - "\u00b6\3\2\2\2\u00c6\u00be\3\2\2\2\u00c7$\3\2\2\2\u00c8\u00cc\5/\27\2"+ - "\u00c9\u00cb\5-\26\2\u00ca\u00c9\3\2\2\2\u00cb\u00ce\3\2\2\2\u00cc\u00ca"+ - "\3\2\2\2\u00cc\u00cd\3\2\2\2\u00cd&\3\2\2\2\u00ce\u00cc\3\2\2\2\u00cf"+ - "\u00d0\t\6\2\2\u00d0\u00d1\3\2\2\2\u00d1\u00d2\b\23\2\2\u00d2(\3\2\2\2"+ - "\u00d3\u00d4\t\7\2\2\u00d4*\3\2\2\2\u00d5\u00d6\t\b\2\2\u00d6,\3\2\2\2"+ - "\u00d7\u00dc\5/\27\2\u00d8\u00dc\t\t\2\2\u00d9\u00dc\5+\25\2\u00da\u00dc"+ - "\t\n\2\2\u00db\u00d7\3\2\2\2\u00db\u00d8\3\2\2\2\u00db\u00d9\3\2\2\2\u00db"+ - "\u00da\3\2\2\2\u00dc.\3\2\2\2\u00dd\u00df\t\13\2\2\u00de\u00dd\3\2\2\2"+ - "\u00df\60\3\2\2\2\u00e0\u00e1\7A\2\2\u00e1\u00e2\7@\2\2\u00e2\u00e3\3"+ - "\2\2\2\u00e3\u00e4\b\30\6\2\u00e4\62\3\2\2\2\u00e5\u00e6\13\2\2\2\u00e6"+ - "\u00e7\3\2\2\2\u00e7\u00e8\b\31\4\2\u00e8\64\3\2\2\2\25\2\3\4=Q^oz~\u0082"+ - "\u0085\u0087\u00a2\u00ba\u00c2\u00c6\u00cc\u00db\u00de\7\b\2\2\7\3\2\5"+ - "\2\2\7\4\2\6\2\2"; + "\31\3\31\5=Q^\2\32\5\3\7\4\t\5\13\6\r\7\17\b\21\t\23\n\25\2\27\13\31\f"+ + "\33\r\35\16\37\17!\20#\21%\22\'\23)\2+\2-\2/\2\61\24\63\2\5\2\3\4\f\4"+ + "\2\13\13\"\"\4\2((>>\4\2$$>>\4\2))>>\5\2\13\f\17\17\"\"\5\2\62;CHch\3"+ + "\2\62;\4\2/\60aa\5\2\u00b9\u00b9\u0302\u0371\u2041\u2042\n\2<<C\\c|\u2072"+ + "\u2191\u2c02\u2ff1\u3003\ud801\uf902\ufdd1\ufdf2\uffff\u00f3\2\5\3\2\2"+ + "\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21"+ + "\3\2\2\2\2\23\3\2\2\2\2\25\3\2\2\2\2\27\3\2\2\2\3\31\3\2\2\2\3\33\3\2"+ + "\2\2\3\35\3\2\2\2\3\37\3\2\2\2\3!\3\2\2\2\3#\3\2\2\2\3%\3\2\2\2\3\'\3"+ + "\2\2\2\4\61\3\2\2\2\4\63\3\2\2\2\5\65\3\2\2\2\7D\3\2\2\2\tX\3\2\2\2\13"+ + "e\3\2\2\2\r~\3\2\2\2\17\u0085\3\2\2\2\21\u0089\3\2\2\2\23\u008d\3\2\2"+ + "\2\25\u0097\3\2\2\2\27\u00a0\3\2\2\2\31\u00a4\3\2\2\2\33\u00a8\3\2\2\2"+ + "\35\u00ad\3\2\2\2\37\u00b2\3\2\2\2!\u00b4\3\2\2\2#\u00c6\3\2\2\2%\u00c8"+ + "\3\2\2\2\'\u00cf\3\2\2\2)\u00d3\3\2\2\2+\u00d5\3\2\2\2-\u00db\3\2\2\2"+ + "/\u00de\3\2\2\2\61\u00e0\3\2\2\2\63\u00e5\3\2\2\2\65\66\7>\2\2\66\67\7"+ + "#\2\2\678\7/\2\289\7/\2\29=\3\2\2\2:<\13\2\2\2;:\3\2\2\2<?\3\2\2\2=>\3"+ + "\2\2\2=;\3\2\2\2>@\3\2\2\2?=\3\2\2\2@A\7/\2\2AB\7/\2\2BC\7@\2\2C\6\3\2"+ + "\2\2DE\7>\2\2EF\7#\2\2FG\7]\2\2GH\7E\2\2HI\7F\2\2IJ\7C\2\2JK\7V\2\2KL"+ + "\7C\2\2LM\7]\2\2MQ\3\2\2\2NP\13\2\2\2ON\3\2\2\2PS\3\2\2\2QR\3\2\2\2QO"+ + "\3\2\2\2RT\3\2\2\2SQ\3\2\2\2TU\7_\2\2UV\7_\2\2VW\7@\2\2W\b\3\2\2\2XY\7"+ + ">\2\2YZ\7#\2\2Z^\3\2\2\2[]\13\2\2\2\\[\3\2\2\2]`\3\2\2\2^_\3\2\2\2^\\"+ + "\3\2\2\2_a\3\2\2\2`^\3\2\2\2ab\7@\2\2bc\3\2\2\2cd\b\4\2\2d\n\3\2\2\2e"+ + "f\7(\2\2fg\5%\22\2gh\7=\2\2h\f\3\2\2\2ij\7(\2\2jk\7%\2\2km\3\2\2\2ln\5"+ + "+\25\2ml\3\2\2\2no\3\2\2\2om\3\2\2\2op\3\2\2\2pq\3\2\2\2qr\7=\2\2r\177"+ + "\3\2\2\2st\7(\2\2tu\7%\2\2uv\7z\2\2vx\3\2\2\2wy\5)\24\2xw\3\2\2\2yz\3"+ + "\2\2\2zx\3\2\2\2z{\3\2\2\2{|\3\2\2\2|}\7=\2\2}\177\3\2\2\2~i\3\2\2\2~"+ + "s\3\2\2\2\177\16\3\2\2\2\u0080\u0086\t\2\2\2\u0081\u0083\7\17\2\2\u0082"+ + "\u0081\3\2\2\2\u0082\u0083\3\2\2\2\u0083\u0084\3\2\2\2\u0084\u0086\7\f"+ + "\2\2\u0085\u0080\3\2\2\2\u0085\u0082\3\2\2\2\u0086\u0087\3\2\2\2\u0087"+ + "\u0085\3\2\2\2\u0087\u0088\3\2\2\2\u0088\20\3\2\2\2\u0089\u008a\7>\2\2"+ + "\u008a\u008b\3\2\2\2\u008b\u008c\b\b\3\2\u008c\22\3\2\2\2\u008d\u008e"+ + "\7>\2\2\u008e\u008f\7A\2\2\u008f\u0090\7z\2\2\u0090\u0091\7o\2\2\u0091"+ + "\u0092\7n\2\2\u0092\u0093\3\2\2\2\u0093\u0094\5\'\23\2\u0094\u0095\3\2"+ + "\2\2\u0095\u0096\b\t\3\2\u0096\24\3\2\2\2\u0097\u0098\7>\2\2\u0098\u0099"+ + "\7A\2\2\u0099\u009a\3\2\2\2\u009a\u009b\5%\22\2\u009b\u009c\3\2\2\2\u009c"+ + "\u009d\b\n\4\2\u009d\u009e\b\n\5\2\u009e\26\3\2\2\2\u009f\u00a1\n\3\2"+ + "\2\u00a0\u009f\3\2\2\2\u00a1\u00a2\3\2\2\2\u00a2\u00a0\3\2\2\2\u00a2\u00a3"+ + "\3\2\2\2\u00a3\30\3\2\2\2\u00a4\u00a5\7@\2\2\u00a5\u00a6\3\2\2\2\u00a6"+ + "\u00a7\b\f\6\2\u00a7\32\3\2\2\2\u00a8\u00a9\7A\2\2\u00a9\u00aa\7@\2\2"+ + "\u00aa\u00ab\3\2\2\2\u00ab\u00ac\b\r\6\2\u00ac\34\3\2\2\2\u00ad\u00ae"+ + "\7\61\2\2\u00ae\u00af\7@\2\2\u00af\u00b0\3\2\2\2\u00b0\u00b1\b\16\6\2"+ + "\u00b1\36\3\2\2\2\u00b2\u00b3\7\61\2\2\u00b3 \3\2\2\2\u00b4\u00b5\7?\2"+ + "\2\u00b5\"\3\2\2\2\u00b6\u00ba\7$\2\2\u00b7\u00b9\n\4\2\2\u00b8\u00b7"+ + "\3\2\2\2\u00b9\u00bc\3\2\2\2\u00ba\u00b8\3\2\2\2\u00ba\u00bb\3\2\2\2\u00bb"+ + "\u00bd\3\2\2\2\u00bc\u00ba\3\2\2\2\u00bd\u00c7\7$\2\2\u00be\u00c2\7)\2"+ + "\2\u00bf\u00c1\n\5\2\2\u00c0\u00bf\3\2\2\2\u00c1\u00c4\3\2\2\2\u00c2\u00c0"+ + "\3\2\2\2\u00c2\u00c3\3\2\2\2\u00c3\u00c5\3\2\2\2\u00c4\u00c2\3\2\2\2\u00c5"+ + "\u00c7\7)\2\2\u00c6\u00b6\3\2\2\2\u00c6\u00be\3\2\2\2\u00c7$\3\2\2\2\u00c8"+ + "\u00cc\5/\27\2\u00c9\u00cb\5-\26\2\u00ca\u00c9\3\2\2\2\u00cb\u00ce\3\2"+ + "\2\2\u00cc\u00ca\3\2\2\2\u00cc\u00cd\3\2\2\2\u00cd&\3\2\2\2\u00ce\u00cc"+ + "\3\2\2\2\u00cf\u00d0\t\6\2\2\u00d0\u00d1\3\2\2\2\u00d1\u00d2\b\23\2\2"+ + "\u00d2(\3\2\2\2\u00d3\u00d4\t\7\2\2\u00d4*\3\2\2\2\u00d5\u00d6\t\b\2\2"+ + "\u00d6,\3\2\2\2\u00d7\u00dc\5/\27\2\u00d8\u00dc\t\t\2\2\u00d9\u00dc\5"+ + "+\25\2\u00da\u00dc\t\n\2\2\u00db\u00d7\3\2\2\2\u00db\u00d8\3\2\2\2\u00db"+ + "\u00d9\3\2\2\2\u00db\u00da\3\2\2\2\u00dc.\3\2\2\2\u00dd\u00df\t\13\2\2"+ + "\u00de\u00dd\3\2\2\2\u00df\60\3\2\2\2\u00e0\u00e1\7A\2\2\u00e1\u00e2\7"+ + "@\2\2\u00e2\u00e3\3\2\2\2\u00e3\u00e4\b\30\6\2\u00e4\62\3\2\2\2\u00e5"+ + "\u00e6\13\2\2\2\u00e6\u00e7\3\2\2\2\u00e7\u00e8\b\31\4\2\u00e8\64\3\2"+ + "\2\2\25\2\3\4=Q^oz~\u0082\u0085\u0087\u00a2\u00ba\u00c2\u00c6\u00cc\u00db"+ + "\u00de\7\b\2\2\7\3\2\5\2\2\7\4\2\6\2\2"; public static final ATN _ATN = new ATNDeserializer().deserialize(_serializedATN.toCharArray()); static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } }
\ No newline at end of file diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.tokens b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.tokens index cd122a48..d80683d7 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.tokens +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLLexer.tokens @@ -1,23 +1,23 @@ -OPEN=7 +COMMENT=1 CDATA=2 -SLASH=13 +DTD=3 +EntityRef=4 CharRef=5 SEA_WS=6 -SPECIAL_CLOSE=11 +OPEN=7 +XMLDeclOpen=8 +TEXT=9 CLOSE=10 -DTD=3 -Name=16 -EQUALS=14 -PI=18 -S=17 +SPECIAL_CLOSE=11 SLASH_CLOSE=12 -TEXT=9 -COMMENT=1 -XMLDeclOpen=8 -EntityRef=4 +SLASH=13 +EQUALS=14 STRING=15 -'='=14 -'/'=13 +Name=16 +S=17 +PI=18 '<'=7 -'/>'=12 '>'=10 +'/>'=12 +'/'=13 +'='=14 diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.java index a3757804..5eaad942 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.java @@ -1,4 +1,4 @@ -// Generated from XMLParser.g4 by ANTLR 4.4 +// Generated from XMLParser.g4 by ANTLR 4.5.3 package android.databinding.parser; import org.antlr.v4.runtime.atn.*; import org.antlr.v4.runtime.dfa.DFA; @@ -6,17 +6,20 @@ import org.antlr.v4.runtime.*; import org.antlr.v4.runtime.misc.*; import org.antlr.v4.runtime.tree.*; import java.util.List; +import java.util.Iterator; +import java.util.ArrayList; +@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"}) public class XMLParser extends Parser { + static { RuntimeMetaData.checkVersion("4.5.3", RuntimeMetaData.VERSION); } + + protected static final DFA[] _decisionToDFA; + protected static final PredictionContextCache _sharedContextCache = + new PredictionContextCache(); public static final int - OPEN=7, CDATA=2, SLASH=13, CharRef=5, SEA_WS=6, SPECIAL_CLOSE=11, CLOSE=10, - DTD=3, Name=16, EQUALS=14, PI=18, S=17, SLASH_CLOSE=12, TEXT=9, COMMENT=1, - XMLDeclOpen=8, EntityRef=4, STRING=15; - public static final String[] tokenNames = { - "<INVALID>", "COMMENT", "CDATA", "DTD", "EntityRef", "CharRef", "SEA_WS", - "'<'", "XMLDeclOpen", "TEXT", "'>'", "SPECIAL_CLOSE", "'/>'", "'/'", "'='", - "STRING", "Name", "S", "PI" - }; + COMMENT=1, CDATA=2, DTD=3, EntityRef=4, CharRef=5, SEA_WS=6, OPEN=7, XMLDeclOpen=8, + TEXT=9, CLOSE=10, SPECIAL_CLOSE=11, SLASH_CLOSE=12, SLASH=13, EQUALS=14, + STRING=15, Name=16, S=17, PI=18; public static final int RULE_document = 0, RULE_prolog = 1, RULE_content = 2, RULE_element = 3, RULE_reference = 4, RULE_attribute = 5, RULE_chardata = 6, RULE_misc = 7; @@ -25,11 +28,50 @@ public class XMLParser extends Parser { "chardata", "misc" }; + private static final String[] _LITERAL_NAMES = { + null, null, null, null, null, null, null, "'<'", null, null, "'>'", null, + "'/>'", "'/'", "'='" + }; + private static final String[] _SYMBOLIC_NAMES = { + null, "COMMENT", "CDATA", "DTD", "EntityRef", "CharRef", "SEA_WS", "OPEN", + "XMLDeclOpen", "TEXT", "CLOSE", "SPECIAL_CLOSE", "SLASH_CLOSE", "SLASH", + "EQUALS", "STRING", "Name", "S", "PI" + }; + public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES); + + /** + * @deprecated Use {@link #VOCABULARY} instead. + */ + @Deprecated + public static final String[] tokenNames; + static { + tokenNames = new String[_SYMBOLIC_NAMES.length]; + for (int i = 0; i < tokenNames.length; i++) { + tokenNames[i] = VOCABULARY.getLiteralName(i); + if (tokenNames[i] == null) { + tokenNames[i] = VOCABULARY.getSymbolicName(i); + } + + if (tokenNames[i] == null) { + tokenNames[i] = "<INVALID>"; + } + } + } + @Override - public String getGrammarFileName() { return "XMLParser.g4"; } + @Deprecated + public String[] getTokenNames() { + return tokenNames; + } @Override - public String[] getTokenNames() { return tokenNames; } + + public Vocabulary getVocabulary() { + return VOCABULARY; + } + + @Override + public String getGrammarFileName() { return "XMLParser.g4"; } @Override public String[] getRuleNames() { return ruleNames; } @@ -37,20 +79,23 @@ public class XMLParser extends Parser { @Override public String getSerializedATN() { return _serializedATN; } + @Override + public ATN getATN() { return _ATN; } + public XMLParser(TokenStream input) { super(input); - _interp = new ParserATNSimulator(this,_ATN); + _interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache); } public static class DocumentContext extends ParserRuleContext { public ElementContext element() { return getRuleContext(ElementContext.class,0); } - public List<? extends MiscContext> misc() { - return getRuleContexts(MiscContext.class); - } public PrologContext prolog() { return getRuleContext(PrologContext.class,0); } + public List<MiscContext> misc() { + return getRuleContexts(MiscContext.class); + } public MiscContext misc(int i) { return getRuleContext(MiscContext.class,i); } @@ -67,13 +112,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitDocument(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitDocument(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitDocument(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final DocumentContext document() throws RecognitionException { DocumentContext _localctx = new DocumentContext(_ctx, getState()); enterRule(_localctx, 0, RULE_document); @@ -85,7 +129,8 @@ public class XMLParser extends Parser { _la = _input.LA(1); if (_la==XMLDeclOpen) { { - setState(16); prolog(); + setState(16); + prolog(); } } @@ -95,21 +140,24 @@ public class XMLParser extends Parser { while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << COMMENT) | (1L << SEA_WS) | (1L << PI))) != 0)) { { { - setState(19); misc(); + setState(19); + misc(); } } setState(24); _errHandler.sync(this); _la = _input.LA(1); } - setState(25); element(); + setState(25); + element(); setState(29); _errHandler.sync(this); _la = _input.LA(1); while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << COMMENT) | (1L << SEA_WS) | (1L << PI))) != 0)) { { { - setState(26); misc(); + setState(26); + misc(); } } setState(31); @@ -130,14 +178,14 @@ public class XMLParser extends Parser { } public static class PrologContext extends ParserRuleContext { + public TerminalNode XMLDeclOpen() { return getToken(XMLParser.XMLDeclOpen, 0); } public TerminalNode SPECIAL_CLOSE() { return getToken(XMLParser.SPECIAL_CLOSE, 0); } - public List<? extends AttributeContext> attribute() { + public List<AttributeContext> attribute() { return getRuleContexts(AttributeContext.class); } public AttributeContext attribute(int i) { return getRuleContext(AttributeContext.class,i); } - public TerminalNode XMLDeclOpen() { return getToken(XMLParser.XMLDeclOpen, 0); } public PrologContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); } @@ -151,13 +199,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitProlog(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitProlog(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitProlog(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final PrologContext prolog() throws RecognitionException { PrologContext _localctx = new PrologContext(_ctx, getState()); enterRule(_localctx, 2, RULE_prolog); @@ -165,21 +212,24 @@ public class XMLParser extends Parser { try { enterOuterAlt(_localctx, 1); { - setState(32); match(XMLDeclOpen); + setState(32); + match(XMLDeclOpen); setState(36); _errHandler.sync(this); _la = _input.LA(1); while (_la==Name) { { { - setState(33); attribute(); + setState(33); + attribute(); } } setState(38); _errHandler.sync(this); _la = _input.LA(1); } - setState(39); match(SPECIAL_CLOSE); + setState(39); + match(SPECIAL_CLOSE); } } catch (RecognitionException re) { @@ -194,35 +244,35 @@ public class XMLParser extends Parser { } public static class ContentContext extends ParserRuleContext { - public List<? extends TerminalNode> PI() { return getTokens(XMLParser.PI); } - public List<? extends TerminalNode> CDATA() { return getTokens(XMLParser.CDATA); } - public List<? extends ElementContext> element() { - return getRuleContexts(ElementContext.class); + public List<ChardataContext> chardata() { + return getRuleContexts(ChardataContext.class); } - public TerminalNode PI(int i) { - return getToken(XMLParser.PI, i); + public ChardataContext chardata(int i) { + return getRuleContext(ChardataContext.class,i); + } + public List<ElementContext> element() { + return getRuleContexts(ElementContext.class); } public ElementContext element(int i) { return getRuleContext(ElementContext.class,i); } - public TerminalNode COMMENT(int i) { - return getToken(XMLParser.COMMENT, i); - } - public TerminalNode CDATA(int i) { - return getToken(XMLParser.CDATA, i); + public List<ReferenceContext> reference() { + return getRuleContexts(ReferenceContext.class); } public ReferenceContext reference(int i) { return getRuleContext(ReferenceContext.class,i); } - public List<? extends TerminalNode> COMMENT() { return getTokens(XMLParser.COMMENT); } - public ChardataContext chardata(int i) { - return getRuleContext(ChardataContext.class,i); + public List<TerminalNode> CDATA() { return getTokens(XMLParser.CDATA); } + public TerminalNode CDATA(int i) { + return getToken(XMLParser.CDATA, i); } - public List<? extends ChardataContext> chardata() { - return getRuleContexts(ChardataContext.class); + public List<TerminalNode> PI() { return getTokens(XMLParser.PI); } + public TerminalNode PI(int i) { + return getToken(XMLParser.PI, i); } - public List<? extends ReferenceContext> reference() { - return getRuleContexts(ReferenceContext.class); + public List<TerminalNode> COMMENT() { return getTokens(XMLParser.COMMENT); } + public TerminalNode COMMENT(int i) { + return getToken(XMLParser.COMMENT, i); } public ContentContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); @@ -237,13 +287,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitContent(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitContent(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitContent(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ContentContext content() throws RecognitionException { ContentContext _localctx = new ContentContext(_ctx, getState()); enterRule(_localctx, 4, RULE_content); @@ -256,7 +305,8 @@ public class XMLParser extends Parser { _la = _input.LA(1); if (_la==SEA_WS || _la==TEXT) { { - setState(41); chardata(); + setState(41); + chardata(); } } @@ -271,28 +321,33 @@ public class XMLParser extends Parser { switch (_input.LA(1)) { case OPEN: { - setState(44); element(); + setState(44); + element(); } break; case EntityRef: case CharRef: { - setState(45); reference(); + setState(45); + reference(); } break; case CDATA: { - setState(46); match(CDATA); + setState(46); + match(CDATA); } break; case PI: { - setState(47); match(PI); + setState(47); + match(PI); } break; case COMMENT: { - setState(48); match(COMMENT); + setState(48); + match(COMMENT); } break; default: @@ -302,7 +357,8 @@ public class XMLParser extends Parser { _la = _input.LA(1); if (_la==SEA_WS || _la==TEXT) { { - setState(51); chardata(); + setState(51); + chardata(); } } @@ -328,18 +384,18 @@ public class XMLParser extends Parser { public static class ElementContext extends ParserRuleContext { public Token elmName; - public List<? extends AttributeContext> attribute() { - return getRuleContexts(AttributeContext.class); - } - public AttributeContext attribute(int i) { - return getRuleContext(AttributeContext.class,i); + public ContentContext content() { + return getRuleContext(ContentContext.class,0); } + public List<TerminalNode> Name() { return getTokens(XMLParser.Name); } public TerminalNode Name(int i) { return getToken(XMLParser.Name, i); } - public List<? extends TerminalNode> Name() { return getTokens(XMLParser.Name); } - public ContentContext content() { - return getRuleContext(ContentContext.class,0); + public List<AttributeContext> attribute() { + return getRuleContexts(AttributeContext.class); + } + public AttributeContext attribute(int i) { + return getRuleContext(AttributeContext.class,i); } public ElementContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); @@ -354,66 +410,78 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitElement(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitElement(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitElement(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ElementContext element() throws RecognitionException { ElementContext _localctx = new ElementContext(_ctx, getState()); enterRule(_localctx, 6, RULE_element); int _la; try { setState(83); + _errHandler.sync(this); switch ( getInterpreter().adaptivePredict(_input,10,_ctx) ) { case 1: enterOuterAlt(_localctx, 1); { - setState(59); match(OPEN); - setState(60); _localctx.elmName = match(Name); + setState(59); + match(OPEN); + setState(60); + ((ElementContext)_localctx).elmName = match(Name); setState(64); _errHandler.sync(this); _la = _input.LA(1); while (_la==Name) { { { - setState(61); attribute(); + setState(61); + attribute(); } } setState(66); _errHandler.sync(this); _la = _input.LA(1); } - setState(67); match(CLOSE); - setState(68); content(); - setState(69); match(OPEN); - setState(70); match(SLASH); - setState(71); match(Name); - setState(72); match(CLOSE); + setState(67); + match(CLOSE); + setState(68); + content(); + setState(69); + match(OPEN); + setState(70); + match(SLASH); + setState(71); + match(Name); + setState(72); + match(CLOSE); } break; - case 2: enterOuterAlt(_localctx, 2); { - setState(74); match(OPEN); - setState(75); _localctx.elmName = match(Name); + setState(74); + match(OPEN); + setState(75); + ((ElementContext)_localctx).elmName = match(Name); setState(79); _errHandler.sync(this); _la = _input.LA(1); while (_la==Name) { { { - setState(76); attribute(); + setState(76); + attribute(); } } setState(81); _errHandler.sync(this); _la = _input.LA(1); } - setState(82); match(SLASH_CLOSE); + setState(82); + match(SLASH_CLOSE); } break; } @@ -430,8 +498,8 @@ public class XMLParser extends Parser { } public static class ReferenceContext extends ParserRuleContext { - public TerminalNode CharRef() { return getToken(XMLParser.CharRef, 0); } public TerminalNode EntityRef() { return getToken(XMLParser.EntityRef, 0); } + public TerminalNode CharRef() { return getToken(XMLParser.CharRef, 0); } public ReferenceContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); } @@ -445,13 +513,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitReference(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitReference(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitReference(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ReferenceContext reference() throws RecognitionException { ReferenceContext _localctx = new ReferenceContext(_ctx, getState()); enterRule(_localctx, 8, RULE_reference); @@ -463,8 +530,9 @@ public class XMLParser extends Parser { _la = _input.LA(1); if ( !(_la==EntityRef || _la==CharRef) ) { _errHandler.recoverInline(this); + } else { + consume(); } - consume(); } } catch (RecognitionException re) { @@ -496,22 +564,24 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitAttribute(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitAttribute(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitAttribute(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final AttributeContext attribute() throws RecognitionException { AttributeContext _localctx = new AttributeContext(_ctx, getState()); enterRule(_localctx, 10, RULE_attribute); try { enterOuterAlt(_localctx, 1); { - setState(87); _localctx.attrName = match(Name); - setState(88); match(EQUALS); - setState(89); _localctx.attrValue = match(STRING); + setState(87); + ((AttributeContext)_localctx).attrName = match(Name); + setState(88); + match(EQUALS); + setState(89); + ((AttributeContext)_localctx).attrValue = match(STRING); } } catch (RecognitionException re) { @@ -526,8 +596,8 @@ public class XMLParser extends Parser { } public static class ChardataContext extends ParserRuleContext { - public TerminalNode SEA_WS() { return getToken(XMLParser.SEA_WS, 0); } public TerminalNode TEXT() { return getToken(XMLParser.TEXT, 0); } + public TerminalNode SEA_WS() { return getToken(XMLParser.SEA_WS, 0); } public ChardataContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); } @@ -541,13 +611,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitChardata(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitChardata(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitChardata(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final ChardataContext chardata() throws RecognitionException { ChardataContext _localctx = new ChardataContext(_ctx, getState()); enterRule(_localctx, 12, RULE_chardata); @@ -559,8 +628,9 @@ public class XMLParser extends Parser { _la = _input.LA(1); if ( !(_la==SEA_WS || _la==TEXT) ) { _errHandler.recoverInline(this); + } else { + consume(); } - consume(); } } catch (RecognitionException re) { @@ -575,9 +645,9 @@ public class XMLParser extends Parser { } public static class MiscContext extends ParserRuleContext { - public TerminalNode SEA_WS() { return getToken(XMLParser.SEA_WS, 0); } - public TerminalNode PI() { return getToken(XMLParser.PI, 0); } public TerminalNode COMMENT() { return getToken(XMLParser.COMMENT, 0); } + public TerminalNode PI() { return getToken(XMLParser.PI, 0); } + public TerminalNode SEA_WS() { return getToken(XMLParser.SEA_WS, 0); } public MiscContext(ParserRuleContext parent, int invokingState) { super(parent, invokingState); } @@ -591,13 +661,12 @@ public class XMLParser extends Parser { if ( listener instanceof XMLParserListener ) ((XMLParserListener)listener).exitMisc(this); } @Override - public <Result> Result accept(ParseTreeVisitor<? extends Result> visitor) { - if ( visitor instanceof XMLParserVisitor<?> ) return ((XMLParserVisitor<? extends Result>)visitor).visitMisc(this); + public <T> T accept(ParseTreeVisitor<? extends T> visitor) { + if ( visitor instanceof XMLParserVisitor ) return ((XMLParserVisitor<? extends T>)visitor).visitMisc(this); else return visitor.visitChildren(this); } } - @RuleVersion(0) public final MiscContext misc() throws RecognitionException { MiscContext _localctx = new MiscContext(_ctx, getState()); enterRule(_localctx, 14, RULE_misc); @@ -609,8 +678,9 @@ public class XMLParser extends Parser { _la = _input.LA(1); if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << COMMENT) | (1L << SEA_WS) | (1L << PI))) != 0)) ) { _errHandler.recoverInline(this); + } else { + consume(); } - consume(); } } catch (RecognitionException re) { @@ -625,34 +695,38 @@ public class XMLParser extends Parser { } public static final String _serializedATN = - "\3\uaf6f\u8320\u479d\ub75c\u4880\u1605\u191c\uab37\3\24b\4\2\t\2\4\3\t"+ + "\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\3\24b\4\2\t\2\4\3\t"+ "\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\3\2\5\2\24\n\2\3\2"+ "\7\2\27\n\2\f\2\16\2\32\13\2\3\2\3\2\7\2\36\n\2\f\2\16\2!\13\2\3\3\3\3"+ "\7\3%\n\3\f\3\16\3(\13\3\3\3\3\3\3\4\5\4-\n\4\3\4\3\4\3\4\3\4\3\4\5\4"+ "\64\n\4\3\4\5\4\67\n\4\7\49\n\4\f\4\16\4<\13\4\3\5\3\5\3\5\7\5A\n\5\f"+ "\5\16\5D\13\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\3\5\7\5P\n\5\f\5\16"+ "\5S\13\5\3\5\5\5V\n\5\3\6\3\6\3\7\3\7\3\7\3\7\3\b\3\b\3\t\3\t\3\t\2\2"+ - "\2\n\2\2\4\2\6\2\b\2\n\2\f\2\16\2\20\2\2\5\3\2\6\7\4\2\b\b\13\13\5\2\3"+ - "\3\b\b\24\24g\2\23\3\2\2\2\4\"\3\2\2\2\6,\3\2\2\2\bU\3\2\2\2\nW\3\2\2"+ - "\2\fY\3\2\2\2\16]\3\2\2\2\20_\3\2\2\2\22\24\5\4\3\2\23\22\3\2\2\2\23\24"+ - "\3\2\2\2\24\30\3\2\2\2\25\27\5\20\t\2\26\25\3\2\2\2\27\32\3\2\2\2\30\26"+ - "\3\2\2\2\30\31\3\2\2\2\31\33\3\2\2\2\32\30\3\2\2\2\33\37\5\b\5\2\34\36"+ - "\5\20\t\2\35\34\3\2\2\2\36!\3\2\2\2\37\35\3\2\2\2\37 \3\2\2\2 \3\3\2\2"+ - "\2!\37\3\2\2\2\"&\7\n\2\2#%\5\f\7\2$#\3\2\2\2%(\3\2\2\2&$\3\2\2\2&\'\3"+ - "\2\2\2\')\3\2\2\2(&\3\2\2\2)*\7\r\2\2*\5\3\2\2\2+-\5\16\b\2,+\3\2\2\2"+ - ",-\3\2\2\2-:\3\2\2\2.\64\5\b\5\2/\64\5\n\6\2\60\64\7\4\2\2\61\64\7\24"+ - "\2\2\62\64\7\3\2\2\63.\3\2\2\2\63/\3\2\2\2\63\60\3\2\2\2\63\61\3\2\2\2"+ - "\63\62\3\2\2\2\64\66\3\2\2\2\65\67\5\16\b\2\66\65\3\2\2\2\66\67\3\2\2"+ - "\2\679\3\2\2\28\63\3\2\2\29<\3\2\2\2:8\3\2\2\2:;\3\2\2\2;\7\3\2\2\2<:"+ - "\3\2\2\2=>\7\t\2\2>B\7\22\2\2?A\5\f\7\2@?\3\2\2\2AD\3\2\2\2B@\3\2\2\2"+ - "BC\3\2\2\2CE\3\2\2\2DB\3\2\2\2EF\7\f\2\2FG\5\6\4\2GH\7\t\2\2HI\7\17\2"+ - "\2IJ\7\22\2\2JK\7\f\2\2KV\3\2\2\2LM\7\t\2\2MQ\7\22\2\2NP\5\f\7\2ON\3\2"+ - "\2\2PS\3\2\2\2QO\3\2\2\2QR\3\2\2\2RT\3\2\2\2SQ\3\2\2\2TV\7\16\2\2U=\3"+ - "\2\2\2UL\3\2\2\2V\t\3\2\2\2WX\t\2\2\2X\13\3\2\2\2YZ\7\22\2\2Z[\7\20\2"+ - "\2[\\\7\21\2\2\\\r\3\2\2\2]^\t\3\2\2^\17\3\2\2\2_`\t\4\2\2`\21\3\2\2\2"+ - "\r\23\30\37&,\63\66:BQU"; + "\n\2\4\6\b\n\f\16\20\2\5\3\2\6\7\4\2\b\b\13\13\5\2\3\3\b\b\24\24g\2\23"+ + "\3\2\2\2\4\"\3\2\2\2\6,\3\2\2\2\bU\3\2\2\2\nW\3\2\2\2\fY\3\2\2\2\16]\3"+ + "\2\2\2\20_\3\2\2\2\22\24\5\4\3\2\23\22\3\2\2\2\23\24\3\2\2\2\24\30\3\2"+ + "\2\2\25\27\5\20\t\2\26\25\3\2\2\2\27\32\3\2\2\2\30\26\3\2\2\2\30\31\3"+ + "\2\2\2\31\33\3\2\2\2\32\30\3\2\2\2\33\37\5\b\5\2\34\36\5\20\t\2\35\34"+ + "\3\2\2\2\36!\3\2\2\2\37\35\3\2\2\2\37 \3\2\2\2 \3\3\2\2\2!\37\3\2\2\2"+ + "\"&\7\n\2\2#%\5\f\7\2$#\3\2\2\2%(\3\2\2\2&$\3\2\2\2&\'\3\2\2\2\')\3\2"+ + "\2\2(&\3\2\2\2)*\7\r\2\2*\5\3\2\2\2+-\5\16\b\2,+\3\2\2\2,-\3\2\2\2-:\3"+ + "\2\2\2.\64\5\b\5\2/\64\5\n\6\2\60\64\7\4\2\2\61\64\7\24\2\2\62\64\7\3"+ + "\2\2\63.\3\2\2\2\63/\3\2\2\2\63\60\3\2\2\2\63\61\3\2\2\2\63\62\3\2\2\2"+ + "\64\66\3\2\2\2\65\67\5\16\b\2\66\65\3\2\2\2\66\67\3\2\2\2\679\3\2\2\2"+ + "8\63\3\2\2\29<\3\2\2\2:8\3\2\2\2:;\3\2\2\2;\7\3\2\2\2<:\3\2\2\2=>\7\t"+ + "\2\2>B\7\22\2\2?A\5\f\7\2@?\3\2\2\2AD\3\2\2\2B@\3\2\2\2BC\3\2\2\2CE\3"+ + "\2\2\2DB\3\2\2\2EF\7\f\2\2FG\5\6\4\2GH\7\t\2\2HI\7\17\2\2IJ\7\22\2\2J"+ + "K\7\f\2\2KV\3\2\2\2LM\7\t\2\2MQ\7\22\2\2NP\5\f\7\2ON\3\2\2\2PS\3\2\2\2"+ + "QO\3\2\2\2QR\3\2\2\2RT\3\2\2\2SQ\3\2\2\2TV\7\16\2\2U=\3\2\2\2UL\3\2\2"+ + "\2V\t\3\2\2\2WX\t\2\2\2X\13\3\2\2\2YZ\7\22\2\2Z[\7\20\2\2[\\\7\21\2\2"+ + "\\\r\3\2\2\2]^\t\3\2\2^\17\3\2\2\2_`\t\4\2\2`\21\3\2\2\2\r\23\30\37&,"+ + "\63\66:BQU"; public static final ATN _ATN = new ATNDeserializer().deserialize(_serializedATN.toCharArray()); static { + _decisionToDFA = new DFA[_ATN.getNumberOfDecisions()]; + for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) { + _decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i); + } } }
\ No newline at end of file diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.tokens b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.tokens index b1423a12..d80683d7 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.tokens +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParser.tokens @@ -1,23 +1,23 @@ -OPEN=7 +COMMENT=1 CDATA=2 -SLASH=13 +DTD=3 +EntityRef=4 CharRef=5 SEA_WS=6 -SPECIAL_CLOSE=11 +OPEN=7 +XMLDeclOpen=8 +TEXT=9 CLOSE=10 -DTD=3 -Name=16 -EQUALS=14 -PI=18 +SPECIAL_CLOSE=11 SLASH_CLOSE=12 -S=17 -TEXT=9 -XMLDeclOpen=8 -COMMENT=1 -EntityRef=4 +SLASH=13 +EQUALS=14 STRING=15 -'='=14 +Name=16 +S=17 +PI=18 '<'=7 -'/'=13 -'/>'=12 '>'=10 +'/>'=12 +'/'=13 +'='=14 diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseListener.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseListener.java index 4c2bae2d..0d237e7e 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseListener.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseListener.java @@ -1,9 +1,7 @@ -// Generated from XMLParser.g4 by ANTLR 4.4 +// Generated from XMLParser.g4 by ANTLR 4.5.3 package android.databinding.parser; import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ErrorNode; import org.antlr.v4.runtime.tree.TerminalNode; @@ -18,127 +16,120 @@ public class XMLParserBaseListener implements XMLParserListener { * * <p>The default implementation does nothing.</p> */ - @Override public void enterContent(@NotNull XMLParser.ContentContext ctx) { } + @Override public void enterDocument(XMLParser.DocumentContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitContent(@NotNull XMLParser.ContentContext ctx) { } - + @Override public void exitDocument(XMLParser.DocumentContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterElement(@NotNull XMLParser.ElementContext ctx) { } + @Override public void enterProlog(XMLParser.PrologContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitElement(@NotNull XMLParser.ElementContext ctx) { } - + @Override public void exitProlog(XMLParser.PrologContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterProlog(@NotNull XMLParser.PrologContext ctx) { } + @Override public void enterContent(XMLParser.ContentContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitProlog(@NotNull XMLParser.PrologContext ctx) { } - + @Override public void exitContent(XMLParser.ContentContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterDocument(@NotNull XMLParser.DocumentContext ctx) { } + @Override public void enterElement(XMLParser.ElementContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitDocument(@NotNull XMLParser.DocumentContext ctx) { } - + @Override public void exitElement(XMLParser.ElementContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterAttribute(@NotNull XMLParser.AttributeContext ctx) { } + @Override public void enterReference(XMLParser.ReferenceContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitAttribute(@NotNull XMLParser.AttributeContext ctx) { } - + @Override public void exitReference(XMLParser.ReferenceContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterChardata(@NotNull XMLParser.ChardataContext ctx) { } + @Override public void enterAttribute(XMLParser.AttributeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitChardata(@NotNull XMLParser.ChardataContext ctx) { } - + @Override public void exitAttribute(XMLParser.AttributeContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterReference(@NotNull XMLParser.ReferenceContext ctx) { } + @Override public void enterChardata(XMLParser.ChardataContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitReference(@NotNull XMLParser.ReferenceContext ctx) { } - + @Override public void exitChardata(XMLParser.ChardataContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterMisc(@NotNull XMLParser.MiscContext ctx) { } + @Override public void enterMisc(XMLParser.MiscContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitMisc(@NotNull XMLParser.MiscContext ctx) { } + @Override public void exitMisc(XMLParser.MiscContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void enterEveryRule(@NotNull ParserRuleContext ctx) { } + @Override public void enterEveryRule(ParserRuleContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void exitEveryRule(@NotNull ParserRuleContext ctx) { } + @Override public void exitEveryRule(ParserRuleContext ctx) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void visitTerminal(@NotNull TerminalNode node) { } + @Override public void visitTerminal(TerminalNode node) { } /** * {@inheritDoc} * * <p>The default implementation does nothing.</p> */ - @Override public void visitErrorNode(@NotNull ErrorNode node) { } + @Override public void visitErrorNode(ErrorNode node) { } }
\ No newline at end of file diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseVisitor.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseVisitor.java index 6b04b77d..c89b2d30 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseVisitor.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserBaseVisitor.java @@ -1,7 +1,5 @@ -// Generated from XMLParser.g4 by ANTLR 4.4 +// Generated from XMLParser.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; /** @@ -9,71 +7,64 @@ import org.antlr.v4.runtime.tree.AbstractParseTreeVisitor; * which can be extended to create a visitor which only needs to handle a subset * of the available methods. * - * @param <Result> The return type of the visit operation. Use {@link Void} for + * @param <T> The return type of the visit operation. Use {@link Void} for * operations with no return type. */ -public class XMLParserBaseVisitor<Result> extends AbstractParseTreeVisitor<Result> implements XMLParserVisitor<Result> { +public class XMLParserBaseVisitor<T> extends AbstractParseTreeVisitor<T> implements XMLParserVisitor<T> { /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitContent(@NotNull XMLParser.ContentContext ctx) { return visitChildren(ctx); } - + @Override public T visitDocument(XMLParser.DocumentContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitElement(@NotNull XMLParser.ElementContext ctx) { return visitChildren(ctx); } - + @Override public T visitProlog(XMLParser.PrologContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitProlog(@NotNull XMLParser.PrologContext ctx) { return visitChildren(ctx); } - + @Override public T visitContent(XMLParser.ContentContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitDocument(@NotNull XMLParser.DocumentContext ctx) { return visitChildren(ctx); } - + @Override public T visitElement(XMLParser.ElementContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitAttribute(@NotNull XMLParser.AttributeContext ctx) { return visitChildren(ctx); } - + @Override public T visitReference(XMLParser.ReferenceContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitChardata(@NotNull XMLParser.ChardataContext ctx) { return visitChildren(ctx); } - + @Override public T visitAttribute(XMLParser.AttributeContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitReference(@NotNull XMLParser.ReferenceContext ctx) { return visitChildren(ctx); } - + @Override public T visitChardata(XMLParser.ChardataContext ctx) { return visitChildren(ctx); } /** * {@inheritDoc} * * <p>The default implementation returns the result of calling * {@link #visitChildren} on {@code ctx}.</p> */ - @Override public Result visitMisc(@NotNull XMLParser.MiscContext ctx) { return visitChildren(ctx); } + @Override public T visitMisc(XMLParser.MiscContext ctx) { return visitChildren(ctx); } }
\ No newline at end of file diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserListener.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserListener.java index 6bee172c..c1b37e20 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserListener.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserListener.java @@ -1,7 +1,5 @@ -// Generated from XMLParser.g4 by ANTLR 4.4 +// Generated from XMLParser.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ParseTreeListener; /** @@ -10,90 +8,83 @@ import org.antlr.v4.runtime.tree.ParseTreeListener; */ public interface XMLParserListener extends ParseTreeListener { /** - * Enter a parse tree produced by {@link XMLParser#content}. + * Enter a parse tree produced by {@link XMLParser#document}. * @param ctx the parse tree */ - void enterContent(@NotNull XMLParser.ContentContext ctx); + void enterDocument(XMLParser.DocumentContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#content}. + * Exit a parse tree produced by {@link XMLParser#document}. * @param ctx the parse tree */ - void exitContent(@NotNull XMLParser.ContentContext ctx); - + void exitDocument(XMLParser.DocumentContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#element}. + * Enter a parse tree produced by {@link XMLParser#prolog}. * @param ctx the parse tree */ - void enterElement(@NotNull XMLParser.ElementContext ctx); + void enterProlog(XMLParser.PrologContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#element}. + * Exit a parse tree produced by {@link XMLParser#prolog}. * @param ctx the parse tree */ - void exitElement(@NotNull XMLParser.ElementContext ctx); - + void exitProlog(XMLParser.PrologContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#prolog}. + * Enter a parse tree produced by {@link XMLParser#content}. * @param ctx the parse tree */ - void enterProlog(@NotNull XMLParser.PrologContext ctx); + void enterContent(XMLParser.ContentContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#prolog}. + * Exit a parse tree produced by {@link XMLParser#content}. * @param ctx the parse tree */ - void exitProlog(@NotNull XMLParser.PrologContext ctx); - + void exitContent(XMLParser.ContentContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#document}. + * Enter a parse tree produced by {@link XMLParser#element}. * @param ctx the parse tree */ - void enterDocument(@NotNull XMLParser.DocumentContext ctx); + void enterElement(XMLParser.ElementContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#document}. + * Exit a parse tree produced by {@link XMLParser#element}. * @param ctx the parse tree */ - void exitDocument(@NotNull XMLParser.DocumentContext ctx); - + void exitElement(XMLParser.ElementContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#attribute}. + * Enter a parse tree produced by {@link XMLParser#reference}. * @param ctx the parse tree */ - void enterAttribute(@NotNull XMLParser.AttributeContext ctx); + void enterReference(XMLParser.ReferenceContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#attribute}. + * Exit a parse tree produced by {@link XMLParser#reference}. * @param ctx the parse tree */ - void exitAttribute(@NotNull XMLParser.AttributeContext ctx); - + void exitReference(XMLParser.ReferenceContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#chardata}. + * Enter a parse tree produced by {@link XMLParser#attribute}. * @param ctx the parse tree */ - void enterChardata(@NotNull XMLParser.ChardataContext ctx); + void enterAttribute(XMLParser.AttributeContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#chardata}. + * Exit a parse tree produced by {@link XMLParser#attribute}. * @param ctx the parse tree */ - void exitChardata(@NotNull XMLParser.ChardataContext ctx); - + void exitAttribute(XMLParser.AttributeContext ctx); /** - * Enter a parse tree produced by {@link XMLParser#reference}. + * Enter a parse tree produced by {@link XMLParser#chardata}. * @param ctx the parse tree */ - void enterReference(@NotNull XMLParser.ReferenceContext ctx); + void enterChardata(XMLParser.ChardataContext ctx); /** - * Exit a parse tree produced by {@link XMLParser#reference}. + * Exit a parse tree produced by {@link XMLParser#chardata}. * @param ctx the parse tree */ - void exitReference(@NotNull XMLParser.ReferenceContext ctx); - + void exitChardata(XMLParser.ChardataContext ctx); /** * Enter a parse tree produced by {@link XMLParser#misc}. * @param ctx the parse tree */ - void enterMisc(@NotNull XMLParser.MiscContext ctx); + void enterMisc(XMLParser.MiscContext ctx); /** * Exit a parse tree produced by {@link XMLParser#misc}. * @param ctx the parse tree */ - void exitMisc(@NotNull XMLParser.MiscContext ctx); + void exitMisc(XMLParser.MiscContext ctx); }
\ No newline at end of file diff --git a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserVisitor.java b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserVisitor.java index 6a76a004..a1abfb70 100644 --- a/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserVisitor.java +++ b/compilerCommon/src/main/xml-gen/android/databinding/parser/XMLParserVisitor.java @@ -1,70 +1,61 @@ -// Generated from XMLParser.g4 by ANTLR 4.4 +// Generated from XMLParser.g4 by ANTLR 4.5.3 package android.databinding.parser; -import org.antlr.v4.runtime.Token; -import org.antlr.v4.runtime.misc.NotNull; import org.antlr.v4.runtime.tree.ParseTreeVisitor; /** * This interface defines a complete generic visitor for a parse tree produced * by {@link XMLParser}. * - * @param <Result> The return type of the visit operation. Use {@link Void} for + * @param <T> The return type of the visit operation. Use {@link Void} for * operations with no return type. */ -public interface XMLParserVisitor<Result> extends ParseTreeVisitor<Result> { +public interface XMLParserVisitor<T> extends ParseTreeVisitor<T> { /** - * Visit a parse tree produced by {@link XMLParser#content}. + * Visit a parse tree produced by {@link XMLParser#document}. * @param ctx the parse tree * @return the visitor result */ - Result visitContent(@NotNull XMLParser.ContentContext ctx); - + T visitDocument(XMLParser.DocumentContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#element}. + * Visit a parse tree produced by {@link XMLParser#prolog}. * @param ctx the parse tree * @return the visitor result */ - Result visitElement(@NotNull XMLParser.ElementContext ctx); - + T visitProlog(XMLParser.PrologContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#prolog}. + * Visit a parse tree produced by {@link XMLParser#content}. * @param ctx the parse tree * @return the visitor result */ - Result visitProlog(@NotNull XMLParser.PrologContext ctx); - + T visitContent(XMLParser.ContentContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#document}. + * Visit a parse tree produced by {@link XMLParser#element}. * @param ctx the parse tree * @return the visitor result */ - Result visitDocument(@NotNull XMLParser.DocumentContext ctx); - + T visitElement(XMLParser.ElementContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#attribute}. + * Visit a parse tree produced by {@link XMLParser#reference}. * @param ctx the parse tree * @return the visitor result */ - Result visitAttribute(@NotNull XMLParser.AttributeContext ctx); - + T visitReference(XMLParser.ReferenceContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#chardata}. + * Visit a parse tree produced by {@link XMLParser#attribute}. * @param ctx the parse tree * @return the visitor result */ - Result visitChardata(@NotNull XMLParser.ChardataContext ctx); - + T visitAttribute(XMLParser.AttributeContext ctx); /** - * Visit a parse tree produced by {@link XMLParser#reference}. + * Visit a parse tree produced by {@link XMLParser#chardata}. * @param ctx the parse tree * @return the visitor result */ - Result visitReference(@NotNull XMLParser.ReferenceContext ctx); - + T visitChardata(XMLParser.ChardataContext ctx); /** * Visit a parse tree produced by {@link XMLParser#misc}. * @param ctx the parse tree * @return the visitor result */ - Result visitMisc(@NotNull XMLParser.MiscContext ctx); + T visitMisc(XMLParser.MiscContext ctx); }
\ No newline at end of file diff --git a/databinding.properties b/databinding.properties index 77cf3068..b7e355b5 100644 --- a/databinding.properties +++ b/databinding.properties @@ -3,8 +3,12 @@ kotlinVersion = 1.0.0 extensionsVersion = 1.1 # we use a public plugin so that it does not need data binding while compiling library androidPublicPluginVersion= 1.5.0 +# java versions for the code that runs on the device javaTargetCompatibility = 1.6 javaSourceCompatibility = 1.6 +# java versions for the code that runs on the host machine +compilerJavaTargetCompatibility = 1.8 +compilerJavaSourceCompatibility = 1.8 buildToolsVersion = 22.0.1 compileSdkVersionStr = 23 prebuildFolderName=prebuilds diff --git a/extensions/baseAdapters/build.gradle b/extensions/baseAdapters/build.gradle index d375aeba..b27457f4 100644 --- a/extensions/baseAdapters/build.gradle +++ b/extensions/baseAdapters/build.gradle @@ -41,7 +41,10 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } - + compileOptions { + sourceCompatibility dataBindingConfig.javaTargetCompatibility + targetCompatibility dataBindingConfig.javaSourceCompatibility + } packagingOptions { exclude 'META-INF/services/javax.annotation.processing.Processor' exclude 'META-INF/LICENSE.txt' diff --git a/extensions/library/build.gradle b/extensions/library/build.gradle index b1455edc..d1c686b5 100644 --- a/extensions/library/build.gradle +++ b/extensions/library/build.gradle @@ -46,8 +46,8 @@ android { versionName "1.0" } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_6 - targetCompatibility JavaVersion.VERSION_1_6 + sourceCompatibility dataBindingConfig.javaTargetCompatibility + targetCompatibility dataBindingConfig.javaSourceCompatibility } buildTypes { release { |